From 4b8cb1a7e7785338dc7258b09e32c9ab12f2918c Mon Sep 17 00:00:00 2001 From: rsachan8 Date: Wed, 14 Sep 2022 15:59:05 +0530 Subject: [PATCH 1/3] September 2022 release spec file changes --- generator/cybersource-rest-spec.json | 149278 ++++++++++++------------ 1 file changed, 74728 insertions(+), 74550 deletions(-) diff --git a/generator/cybersource-rest-spec.json b/generator/cybersource-rest-spec.json index d39523de..055ddfec 100644 --- a/generator/cybersource-rest-spec.json +++ b/generator/cybersource-rest-spec.json @@ -1,74551 +1,74729 @@ -{ - "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" - }, - "host": "apitest.cybersource.com", - "schemes": [ - "https" - ], - "basePath": "/", - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "tags": [ - { - "name": "payments", - "description": "A payment authorizes the amount for the transaction. There are a number of supported payment\ninstruments, such as Credit Card, Debit Card, e-Wallet, and Alternative Payments. A payment\nresponse includes the status of the request. It also includes processor-specific information\nwhen the request is successful and errors if unsuccessful.\n" - }, - { - "name": "capture", - "description": "When you are ready to fulfill a customer\u2019s order and transfer funds from the customer\u2019s\nbank to your bank, capture the payment for that order.\n" - }, - { - "name": "reversal", - "description": "An authorization reversal releases the hold that the payment placed on the customer\u2019s funds." - }, - { - "name": "refund", - "description": "A refund is a follow-on transaction that uses the ID returned from either a payment or capture request.\n" - }, - { - "name": "credit", - "description": "A credit is a stand-alone transaction that is not linked to any previous transactions. It takes money from\nyour merchant bank account and returns it to the customer.\n" - }, - { - "name": "void", - "description": "A void cancels a payment or capture. A transaction can be voided only when CyberSource has not already\nsubmitted the capture to your processor. You cannot undo a void.\n" - }, - { - "name": "TransactionBatches", - "description": "Get a list of batch files or details of Individual file processed through the Offline Transaction Submission Services.\n" - }, - { - "name": "AccountValidations", - "description": "A eCheck account validation enable you to determine, in real time, whether to\nproceed with an electronic check debit or the creation of a recurring electronic check\nsubscription.\n" - }, - { - "name": "Customer", - "description": "The Customer token can be linked to multiple Payment Instruments and Shipping Addresses.\nWith one Payment Instrument and Shipping Address designated as the default.\nIt stores merchant reference information for the Customer such as email and merchant defined data.\n" - }, - { - "name": "Customer Shipping Address", - "description": "The Customer Shipping Address token is linked to a Customer.\nIt stores shipping information in relation to the Customer.\n" - }, - { - "name": "Customer Payment Instrument", - "description": "The Customer Payment Instrument token is linked to a Customer and an Instrument Identifier.\nIt stores additional information in relation to a card number(PAN) or bank account (echeck).\n" - }, - { - "name": "Payment Instrument", - "description": "The stand-alone Payment Instrument token is linked to an Instrument Identifier.\nIt stores additional information in relation to a card number(PAN) or bank account (echeck).\n" - }, - { - "name": "Instrument Identifier", - "description": "The Instrument Identifier token represents a unique card number(PAN) or bank account (echeck).\nIt can also be associated with a Network Token that can be used for payment transactions.\n" - }, - { - "name": "Flex API" - }, - { - "name": "Decision Manager", - "description": "REST API for the Decision Manager Service" - }, - { - "name": "Risk Services", - "description": "REST APIs for Risk Services" - }, - { - "name": "Payouts", - "description": "A payout enables an originator to send funds on behalf of itself, merchants, or customers to credit card\naccounts using an Original Credit Transaction (OCT). An originator is a merchant, government entity, or\ncorporation with a merchant account from an acquiring bank.\n" - }, - { - "name": "installments", - "description": "Provides Visa Installment & Issuer Installment Solution for CyberSource Merchant.\nThis API can be used for sending an installment inquiry transaction to either Visa (for Visa Installments)\nor to the cardholder's issuing bank (for issuer funded installments). The response for this API call\nwill contain list of installment plans that the card holder might be eligible for. This service is applicable\nfor Credit Cards only.\n" - }, - { - "name": "Plans", - "description": "Create and manage Plans for subscriptions.\n" - }, - { - "name": "Subscriptions", - "description": "Create and manage Recurring Subscriptions.\n\nYou have option to link subscription to plan or create independent subscriptions.\n" - }, - { - "name": "Reports", - "description": "API for creation and retrieval of Reports" - }, - { - "name": "Report Definitions", - "description": "Get report definition information" - }, - { - "name": "Report Downloads", - "description": "API for creation and retrieval of Reports" - }, - { - "name": "Report Subscriptions", - "description": "API for creation and retrieval of Report Subscriptions" - }, - { - "name": "Net Fundings", - "description": "API for retrieving the netfunding data for an account or a merchant" - }, - { - "name": "Notification Of Changes", - "description": "API for Notification Of Change" - }, - { - "name": "Purchase And Refund Details", - "description": "API for Purchase and Refund Details" - }, - { - "name": "Payment Batch Summaries", - "description": "API for payment batch summary reports" - }, - { - "name": "Conversion Details", - "description": "API for retrieving conversion data for merchant" - }, - { - "name": "Download DTD", - "description": "API to download report DTDs" - }, - { - "name": "Download XSD", - "description": "API to download report XSDs" - }, - { - "name": "Chargeback Summaries", - "description": "API for requesting Chargeback Summaries." - }, - { - "name": "Chargeback Details", - "description": "API for requesting Chargeback Details." - }, - { - "name": "Retrieval Summaries", - "description": "API for requesting Retrieval Summaries" - }, - { - "name": "Retrieval Details", - "description": "API for requesting Retrieval Details." - }, - { - "name": "Interchange Clearing Level Details", - "description": "API for requesting Interchange Clearing Level data for an account or a merchant." - }, - { - "name": "File Details", - "description": "API to access file information" - }, - { - "name": "File Downloads", - "description": "API to download a file" - }, - { - "name": "invoices", - "description": "Offer your customers a simple, convenient, and fast way to pay with the new online invoicing tool.\n" - }, - { - "name": "invoiceSettings", - "description": "Update the settings for the invoice payment page.\n" - }, - { - "name": "management", - "description": "management rest resources" - }, - { - "name": "account number", - "description": "account number lookup" - }, - { - "name": "taxes", - "description": "tax calculation service" - }, - { - "name": "surcharge", - "description": "Surcharge service" - }, - { - "name": "key-management", - "description": "Generate and deactivate batches of keys.\n" - }, - { - "name": "Merchant Boarding", - "description": "Manage Boarding Registrations" - }, - { - "name": "Create_New_Webhooks", - "description": "Create a new webhook connection\n" - }, - { - "name": "Manage_Webhooks", - "description": "- Create and manage your webhooks. This will allow for you to set up new webhooks, update existing webhooks, test webhooks, or delete them.\n" - } - ], - "x-devcenter-metaData": { - "categoryTagArray": [ - { - "name": "Payments", - "description": "For more information about Payments transactions, see the [Payments Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.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 Token Management, see the [Token Management Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html)." - }, - { - "name": "Flex_Microform", - "description": "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": "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).\n" - }, - { - "name": "Installments", - "description": "For more information about Installment contact Cybersource Support. For Visa installments contact VISthroughCYBS@visa.com" - }, - { - "name": "Recurring_Billing_Subscriptions", - "description": "Recurring Billing & Subscriptions" - }, - { - "name": "BIN_Lookup", - "description": "Cybersource BIN Lookup REST API provides Bank Identification Number (BIN) attributes, such as card type and issuer information, associated with a payment card.\n\n For more information on Token Management (TMS) see the Token Management section of the API reference, or the [Token Management Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html).\n" - }, - { - "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).\n" - }, - { - "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/api/developer-guides/dita-invoicing/Introduction.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": "Key_Management" - }, - { - "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/api/developer-guides/webhooks.html)." - } - ] - }, - "paths": { - "/pts/v2/payments": { - "post": { - "summary": "Process a Payment", - "description": "A payment authorizes the amount for the transaction. There are a number of supported payment feature, such as E-commerce and Card Present - Credit Card/Debit Card, Echeck, e-Wallets, Level II/III Data, etc..\n\nA payment response includes the status of the request. It also includes processor-specific information when the request is successful and errors if unsuccessful. See the [Payments Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html).\n\nAuthorization can be requested with Capture, Decision Manager, Payer Authentication(3ds), and Token Creation.\n", - "tags": [ - "payments" - ], - "operationId": "createPayment", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "testingTriggers": "https://developer.cybersource.com/hello-world/testing-guide.html", - "responseCodes": "https://developer.cybersource.com/api/reference/response-codes.html", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "createPaymentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "actionList": { - "type": "array", - "description": "Array of actions (one or more) to be included in the payment to invoke bundled serviecs along with payment.\n\nPossible values are one or more of follows:\n\n - `DECISION_SKIP`: Use this when you want to skip Decision Manager service(s).\n\n - `TOKEN_CREATE`: Use this when you want to create a token from the card/bank data in your payment request.\n\n - `CONSUMER_AUTHENTICATION`: Use this when you want to check if a card is enrolled in Payer Authentioncation along with your payment request.\n\n - `VALIDATE_CONSUMER_AUTHENTICATION`: Use this after you acquire a Payer Authentioncation result that needs to be included for your payment request.\n", - "items": { - "type": "string" - } - }, - "actionTokenTypes": { - "type": "array", - "description": "CyberSource tokens types you are performing a create on.\nIf not supplied the default token type for the merchants token vault will be used.\n\nValid values:\n- customer\n- paymentInstrument\n- instrumentIdentifier\n- shippingAddress\n", - "items": { - "type": "string" - } - }, - "capture": { - "type": "boolean", - "description": "Indicates whether to also include a capture in the submitted authorization request or not.\n\nPossible values:\n- `true`: Include a capture with an authorization request.\n- `false`: (default) Do not include a capture with an authorization request.\n\n#### Used by\n**Authorization and Capture**\nOptional field.\n", - "default": false - }, - "processorId": { - "type": "string", - "maxLength": 3, - "description": "Value that identifies the processor/acquirer to use for the transaction. This value is supported only for\n**CyberSource through VisaNet**.\n\nContact CyberSource Customer Support to get the value for this field.\n" - }, - "businessApplicationId": { - "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" - }, - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "purchaseLevel": { - "type": "string", - "maxLength": 1, - "description": "Set this field to 3 to indicate that the request includes Level III data." - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "industryDataType": { - "type": "string", - "maxLength": 20, - "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "authorizationOptions": { - "type": "object", - "properties": { - "authType": { - "type": "string", - "maxLength": 15, - "description": "Authorization type. Possible values:\n\n - `AUTOCAPTURE`: automatic capture.\n - `STANDARDCAPTURE`: standard capture.\n - `VERBAL`: forced capture. Include it in the payment request for a forced capture. Include it in the capture request for a verbal payment.\n\n#### Asia, Middle East, and Africa Gateway; Cielo; Comercio Latino; and CyberSource Latin American Processing\nSet this field to `AUTOCAPTURE` and include it in a bundled request to indicate that you are requesting an automatic capture. If your account is configured to enable automatic captures, set this field to `STANDARDCAPTURE` and include it in a standard authorization or bundled request to indicate that you are overriding an automatic capture. For more information, see the `auth_type` field description in [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Forced Capture\nSet this field to `VERBAL` and include it in the authorization request to indicate that you are performing a forced capture; therefore, you receive the authorization code outside the CyberSource system.\n\n#### Verbal Authorization\nSet this field to `VERBAL` and include it in the capture request to indicate that the request is for a verbal authorization. For more information, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" - }, - "panReturnIndicator": { - "type": "string", - "maxLength": 1, - "description": "#### Visa Platform Connect\nThe field contains the PAN translation indicator for American Express Contactless Transaction. Valid value is\u00a0\n\n1- Expresspay Translation, PAN request\n2- Expresspay Translation, PAN and Expiry date request\n" - }, - "verbalAuthCode": { - "type": "string", - "maxLength": 7, - "description": "Authorization code.\n\n#### Forced Capture\nUse this field to send the authorization code you received from a payment that you authorized\noutside the CyberSource system.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit purchase.\n\n#### Verbal Authorization\nUse this field in CAPTURE API to send the verbally received authorization code.\n\nFor processor-specific information, see the `auth_code` field description in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" - }, - "verbalAuthTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Transaction ID (TID).\n\n#### FDMS South\nThis field is required for verbal authorizations and forced captures with the American Express card type to comply\nwith the CAPN requirements:\n- Forced capture: Obtain the value for this field from the authorization response.\n- Verbal authorization: You cannot obtain a value for this field so CyberSource uses the default value of `000000000000000` (15\nzeros).\n" - }, - "authIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag that specifies the purpose of the authorization.\n\nPossible values:\n - **0**: Preauthorization\n - **1**: Final authorization\n\nTo set the default for this field, contact CyberSource Customer Support.\n\n#### Barclays and Elavon\nThe default for Barclays and Elavon is 1 (final authorization). To change the default for this field, contact CyberSource Customer Support.\n\n#### CyberSource through VisaNet\nWhen the value for this field is 0, it corresponds to the following data in the TC 33 capture file:\n - Record: CP01 TCR0\n - Position: 164\n - Field: Additional Authorization Indicators\nWhen the value for this field is 1, it does not correspond to any data in the TC 33 capture file.\n" - }, - "partialAuthIndicator": { - "type": "boolean", - "description": "Flag that indicates whether the transaction is enabled for partial authorization. When the request includes this\nfield, this value overrides the information in your account. Possible values:\n- `true`: Enable the transaction for partial authorization.\n- `false`: Do not enable the transaction for partial authorization.\n\n#### PIN debit\nRequired field for partial authorizations that use PIN debit purchase; otherwise, not used.\n\n#### Used by\n**Authorization**\nOptional field.\n\n#### CyberSource through VisaNet\nTo set the default for this field, contact CyberSource Customer Support.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR0\n- Position: 164\n- Field: Additional Authorization Indicators\n" - }, - "balanceInquiry": { - "type": "boolean", - "description": "Flag that indicates whether to return balance information.\n\nPossible values:\n- `true`: Return balance information.\n- `false`: Do not return balance information.\n\n#### Used by\n**Authorization**\nRequired for a balance inquiry; otherwise, not used.\n\n#### PIN debit\nRequired for a balance inquiry request of a PIN debit purchase; otherwise, not used.\n" - }, - "ignoreAvsResult": { - "type": "boolean", - "description": "Flag for a sale request that indicates whether to allow the capture service to run even when the authorization\nreceives an AVS decline, as indicated by a reply flag value of DAVSNO.\n\nPossible values:\n- `true`: Ignore the results of AVS checking and run the capture service.\n- `false` (default): If the authorization receives an AVS decline, do not run the capture service.\nWhen the value of this field is `true`, the list in the `processingInformation.authorizationOptions.declineAvsFlags` field is ignored.\n\n#### Used by\n**Authorization**\nOptional field.\nString (3)\n", - "default": false - }, - "declineAvsFlags": { - "type": "array", - "description": "Comma-separated list of AVS flags that cause the reply flag `DAVSNO` to be returned.\n\n**Important** To receive declines for the AVS code `N`, you must include the value `N` in the comma-separated\nlist.\n\n ### AVS Codes for Cielo 3.0 and CyberSource Latin American Processing\n\n **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports.\n In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America.\n The information in this section is for the specific processing connection called CyberSource Latin American Processing.\n It is not for any other Latin American processors that CyberSource supports.\n\n|AVS Code|Description|\n|--- |--- |\n|D|Partial match: postal code and address match.|\n|E|Not supported: AVS is not supported for this card type. _or_ Invalid: the acquirer returned an unrecognized value for the AVS response.|\n|F|Partial match: postal code matches, but CPF and address do not match.*|\n|G|Not supported: AVS not supported or not verified.|\n|I|No match: AVS information is not available.|\n|K|Partial match: CPF matches, but postal code and address do not match.*|\n|L|Partial match: postal code and CPF match, but address does not match.*|\n|N|No match: postal code, CPF, and address do not match.*|\n|O|Partial match: CPF and address match, but postal code does not match.*|\n|R|Not supported: your implementation does not support AVS _or_ System unavailable.|\n|T|Partial match: address matches, but postal code and CPF do not match.*|\n|V|Match: postal code, CPF, and address match.*|\n|* CPF (Cadastro de Pessoas Fisicas) is required only for Redecard in Brazil.||\n\n### AVS Codes for All Other Processors\n\n**Note** The list of AVS codes for all other processors follows these descriptions of the processor-specific information for these codes.\n\n#### American Express Cards\nFor American Express cards only, you can receive Visa and CyberSource\nAVS codes in addition to the American Express AVS codes.\n\n**Note** For CyberSource through VisaNet, the American Express AVS codes are converted to Visa\nAVS codes before they are returned to you. As a result, you will not receive American Express AVS codes for\nthe American Express card type.

\n\n_American Express Card codes_: `F`, `H`, `K`, `L`, `O`, `T`, `V`\n\n#### Domestic and International Visa Cards\nThe international and domestic alphabetic AVS codes are the Visa standard AVS codes. CyberSource maps\nthe standard AVS return codes for other types of payment cards, including American Express cards, to\nthe Visa standard AVS codes.\n\nAVS is considered either domestic or international, depending on the location of the bank that issued the\ncustomer's payment card:\n- When the bank is in the U.S., the AVS is domestic.\n- When the bank is outside the U.S., the AVS is international.\n\nYou should be prepared to handle both domestic and international AVS result codes:\n- For international cards, you can receive domestic AVS codes in addition to the international AVS codes.\n- For domestic cards, you can receive international AVS codes in addition to the domestic AVS codes.\n\n_International Visa Codes_: `B`, `C`, `D`, `G`, `I`, `M`, `P`\n\n_Domestic Visa Codes_: `A`, `E`,`N`, `R`, `S`, `U`, `W`, `X`, `Y`, `Z`\n\n#### CyberSource Codes\nThe numeric AVS codes are created by CyberSource\nand are not standard Visa codes. These AVS codes\ncan be returned for any card type.\n\n_CyberSource Codes_: `1`, `2`, `3`, `4`\n\n### Table of AVS Codes for All Other Processors\n\n|AVS Code|Description|\n|--- |--- |\n|A|Partial match: street address matches, but 5-digit and 9-digit postal codes do not match.|\n|B|Partial match: street address matches, but postal code is not verified. Returned only for Visa cards not issued in the U.S.|\n|C|No match: street address and postal code do not match. Returned only for Visa cards not issued in the U.S.|\n|D & M|Match: street address and postal code match. Returned only for Visa cards not issued in the U.S.|\n|E|Invalid: AVS data is invalid or AVS is not allowed for this card type.|\n|F|Partial match: card member\u2019s name does not match, but billing postal code matches.|\n|G|Not supported: issuing bank outside the U.S. does not support AVS.|\n|H|Partial match: card member\u2019s name does not match, but street address and postal code match. Returned only for the American Express card type.|\n|I|No match: address not verified. Returned only for Visa cards not issued in the U.S.|\n|K|Partial match: card member\u2019s name matches, but billing address and billing postal code do not match. Returned only for the American Express card type.|\n|L|Partial match: card member\u2019s name and billing postal code match, but billing address does not match. Returned only for the American Express card type.|\n|M|See the entry for D & M.|\n|N|No match: one of the following: street address and postal code do not match _or_ (American Express card type only) card member\u2019s name, street address, and postal code do not match.|\n|O|Partial match: card member\u2019s name and billing address match, but billing postal code does not match. Returned only for the American Express card type.|\n|P|Partial match: postal code matches, but street address not verified. Returned only for Visa cards not issued in the U.S.|\n|R|System unavailable.|\n|S|Not supported: issuing bank in the U.S. does not support AVS.|\n|T|Partial match: card member\u2019s name does not match, but street address matches. Returned only for the American Express card type.|\n|U|System unavailable: address information unavailable for one of these reasons: The U.S. bank does not support AVS outside the U.S. _or_ The AVS in a U.S. bank is not functioning properly.|\n|V|Match: card member\u2019s name, billing address, and billing postal code match. Returned only for the American Express card type.|\n|W|Partial match: street address does not match, but 9-digit postal code matches.|\n|X|Match: street address and 9-digit postal code match.|\n|Y|Match: street address and 5-digit postal code match.|\n|Z|Partial match: street address does not match, but 5-digit postal code matches.|\n|1|Not supported: one of the following: AVS is not supported for this processor or card type _or_ AVS is disabled for your CyberSource account. To enable AVS, contact CyberSource Customer Support.|\n|2|Unrecognized: the processor returned an unrecognized value for the AVS response.|\n|3|Match: address is confirmed. Returned only for PayPal Express Checkout.|\n|4|No match: address is not confirmed. Returned only for PayPal Express Checkout.|\n|5|No match: no AVS code was returned by the processor.|\n", - "items": { - "type": "string" - } - }, - "ignoreCvResult": { - "type": "boolean", - "description": "Flag for a sale request that indicates whether to allow the capture service to run even when the authorization receives a CVN decline, as indicated by an `processorInformation.cardVerification.resultCode` value of `D` or `N`.\nPossible values:\n- `true`: Ignore the results of CVN checking and run the capture service.\n- `false` (default): If the authorization receives a CVN decline, do not run the capture service.\n\n#### Used by\n**Authorization**\nOptional field.\n", - "default": false - }, - "initiator": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction.\n\nValid values:\n- **customer**\n- **merchant**\n" - }, - "credentialStoredOnFile": { - "type": "boolean", - "description": "Indicates to the issuing bank two things:\n- The merchant has received consent from the cardholder to store their card details on file\n- The merchant wants the issuing bank to check out the card details before the merchant initiates their first transaction for this cardholder.\nThe purpose of the merchant-initiated transaction is to ensure that the cardholder\u2019s credentials are valid (that the card is not stolen or has restrictions) and that the card details are good to be stored on the merchant\u2019s file for future transactions.\n\nValid values:\n- `true` means merchant will use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n- `false` means merchant will not use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n\nFor details, see `subsequent_auth_first` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**NOTE:** The value for this field does not correspond to any data in the TC 33 capture file5.\n\nThis field is supported only for Visa transactions on CyberSource through VisaNet.\n" - }, - "storedCredentialUsed": { - "type": "boolean", - "description": "Indicates to an issuing bank whether a merchant-initiated transaction came from a card that was already stored on file.\n\nPossible values:\n- **true** means the merchant-initiated transaction came from a card that was already stored on file.\n- **false** means the merchant-initiated transaction came from a card that was not stored on file.\n" - }, - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "maxLength": 1, - "description": "Reason for the merchant-initiated transaction or incremental authorization. Possible values:\n- `1`: Resubmission\n- `2`: Delayed charge\n- `3`: Reauthorization for split shipment\n- `4`: No show\n- `5`: Account top up\nThis field is required only for the five kinds of transactions in the preceding list.\nThis field is supported only for merchant-initiated transactions and incremental authorizations.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR0\n- Position: 160-163\n- Field: Message Reason Code\n\n#### All Processors\nFor details, see `subsequent_auth_reason` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n\nIf the current payment request includes a token instead of an account number, the following time limits apply for the value of this field:\n- For a **resubmission**, the transaction ID must be less than 14 days old.\n- For a **delayed charge** or **reauthorization**, the transaction ID must be less than 30 days old.\n\n**NOTE**: The value for this field does not correspond to any data in the TC 33 capture file5. This field is supported\nonly for Visa transactions on CyberSource through VisaNet.\n" - }, - "originalAuthorizedAmount": { - "type": "string", - "maxLength": 61, - "description": "Amount of the original authorization.\n\nThis field is supported only for Apple Pay, Google Pay, and Samsung Pay transactions with Discover on FDC Nashville Global and Chase Paymentech.\n\nSee \"Recurring Payments,\" and \"Subsequent Authorizations,\" field description in the [Payment Network Tokenization\nUsing the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/tokenization_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - } - } - }, - "billPayment": { - "type": "boolean", - "description": "Indicates payment for bill or payment towards existing contractual loan.\n\nPossible values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n\nOptional request field.\n" - }, - "billPaymentType": { - "type": "string", - "description": "Reason for the payment.\n\nPossible values:\n- 001: Utility payment\n- 002: Government services\n- 003: Mobile phone top-up\n- 004: Coupon payment\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR0\n- Position: 48-50\n- Field: Bill Payment Transaction Type Identifier\n\nThis field is supported only for bill payments in Brazil with Mastercard on CyberSource through VisaNet.\n" - }, - "redemptionInquiry": { - "type": "boolean", - "description": "Flag that indicates the payment request is a redemption inquiry.\n\nPossible values:\n - `true`\n - `false`\n" - }, - "transportationMode": { - "type": "string", - "description": "Type of transportation mode :\n\nPossible Values:\n- 00 = Unknown\n- 01 = Urban bus\n- 02 = Interurban bus\n- 03=Lighttrainmasstransit(Underground Metro LTR)\n- 04 = Train\n- 05 = Commuter train\n- 06 = Water-borne vehicle\n- 07 = Toll\n- 08 = Parking\n- 09 = Taxi\n- 10 = High-speed train\n- 11 = Rural bus\n- 12 = Express commuter train\n- 13 = Para transit\n- 14 = Self drive vehicle\n- 15 = Coach\n- 16 = Locomotive\n- 17 = Powered motor coach\n- 18 = Trailer\n- 19 = Regional train\n- 20 = Inter-city\n- 21 = Funicular train\n- 22 = Cable car\n" - }, - "aggregatedAuthIndicator": { - "type": "string", - "description": "Indicates if transaction is an aggregated auth\n\nPossible values:\n- **true**\n- **false**\n" - }, - "debtRecoveryIndicator": { - "type": "string", - "description": "Indicates if transaction is a debt recovery request\n\nPossible values:\n- **true**\n- **false**\n" - }, - "deferredAuthIndicator": { - "type": "boolean", - "description": "Flag that indicates whether the authorization request was delayed because connectivity was interrupted.\n\nPossible values:\n - `true` (Deferred authorization)\n - `false` (default: Not a deferred authorization)\n" - } - } - }, - "captureOptions": { - "type": "object", - "properties": { - "captureSequenceNumber": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Capture number when requesting multiple partial captures for one authorization.\nUsed along with `totalCaptureCount` to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber_ = 2`, and\n - `totalCaptureCount = 5`\n" - }, - "totalCaptureCount": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Total number of captures when requesting multiple partial captures for one payment.\nUsed along with `captureSequenceNumber` field to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber = 2`, and\n - `totalCaptureCount = 5`\n" - }, - "dateToCapture": { - "type": "string", - "maxLength": 4, - "description": "Date on which you want the capture to occur. This field is supported only for CyberSource through VisaNet.\nFormat: `MMDD`\n\n#### Used by\n**Authorization**\nOptional field.\n" - } - } - }, - "recurringOptions": { - "type": "object", - "properties": { - "loanPayment": { - "type": "boolean", - "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", - "default": false - }, - "firstRecurringPayment": { - "type": "boolean", - "description": "Flag that indicates whether this transaction is the first in a series of recurring payments.\n\nThis field is supported only for **Atos**, **FDC Nashville Global**, and **OmniPay Direct**.\n\nPossible values:\n - `true` Indicates this is the first payment in a series of recurring payments\n - `false` (default) Indicates this is not the first payment in a series of recurring payments.\n\nFor details, see `auth_first_recurring_payment` field description and \"Recurring Payments\" in\n[Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", - "default": false - } - } - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "declineAvsFlags": { - "type": "string", - "maxLength": 15, - "description": "Space-separated list of AVS flags that cause the request to be declined for AVS reasons.\n\n**Important** To receive declines for the AVS code `N`, you must include the value `N` in the space-separated list.\n\n### AVS Codes for Cielo 3.0 and CyberSource Latin American Processing\n\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this section is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n|AVS Code|Description|\n|--- |--- |\n|D|Partial match: postal code and address match.|\n|E|Not supported: AVS is not supported for this card type. _or_ Invalid: the acquirer returned an unrecognized value for the AVS response.|\n|F|Partial match: postal code matches, but CPF and address do not match.*|\n|G|Not supported: AVS not supported or not verified.|\n|I|No match: AVS information is not available.|\n|K|Partial match: CPF matches, but postal code and address do not match.*|\n|L|Partial match: postal code and CPF match, but address does not match.*|\n|N|No match: postal code, CPF, and address do not match.*|\n|O|Partial match: CPF and address match, but postal code does not match.*|\n|R|Not supported: your implementation does not support AVS _or_ System unavailable.|\n|T|Partial match: address matches, but postal code and CPF do not match.*|\n|V|Match: postal code, CPF, and address match.*|\n|* CPF (Cadastro de Pessoas Fisicas) is required only for Redecard in Brazil.||\n\n### AVS Codes for All Other Processors\n\n**Note** The list of AVS codes for all other processors follows these descriptions of the processor-specific information for these codes.\n\n#### American Express Cards\nFor American Express cards only, you can receive Visa and CyberSource AVS codes in addition to the American Express AVS codes.\n\n**Note** For CyberSource through VisaNet, the American Express AVS codes are converted to Visa AVS codes before they are returned to you. As a result, you will not receive American Express AVS codes for the American Express card type.\n\n_American Express Card codes_: `F`, `H`, `K`, `L`, `O`, `T`, `V`\n\n#### Domestic and International Visa Cards\nThe international and domestic alphabetic AVS codes are the Visa standard AVS codes. CyberSource maps the standard AVS return codes for other types of payment cards, including American Express cards, to the Visa standard AVS codes.\n\nAVS is considered either domestic or international, depending on the location of the bank that issued the customer\u2019s payment card:\n- When the bank is in the U.S., the AVS is domestic.\n- When the bank is outside the U.S., the AVS is international.\n\nYou should be prepared to handle both domestic and international AVS result codes:\n- For international cards, you can receive domestic AVS codes in addition to the international AVS codes.\n- For domestic cards, you can receive international AVS codes in addition to the domestic AVS codes.\n\n_International Visa Codes_: `B`, `C`, `D`, `G`, `I`, `M`, `P`\n\n_Domestic Visa Codes_: `A`, `E`,`N`, `R`, `S`, `U`, `W`, `X`, `Y`, `Z`\n\n#### CyberSource Codes\nThe numeric AVS codes are created by CyberSource and are not standard Visa codes. These AVS codes can be returned for any card type.\n\n_CyberSource Codes_: `1`, `2`, `3`, `4`\n\n### Table of AVS Codes for All Other Processors\n\n|AVS Code|Description|\n|--- |--- |\n|A|Partial match: street address matches, but 5-digit and 9-digit postal codes do not match.|\n|B|Partial match: street address matches, but postal code is not verified. Returned only for Visa cards not issued in the U.S.|\n|C|No match: street address and postal code do not match. Returned only for Visa cards not issued in the U.S.|\n|D & M|Match: street address and postal code match. Returned only for Visa cards not issued in the U.S.|\n|E|Invalid: AVS data is invalid or AVS is not allowed for this card type.|\n|F|Partial match: card member\u2019s name does not match, but billing postal code matches.|\n|G|Not supported: issuing bank outside the U.S. does not support AVS.|\n|H|Partial match: card member\u2019s name does not match, but street address and postal code match. Returned only for the American Express card type.|\n|I|No match: address not verified. Returned only for Visa cards not issued in the U.S.|\n|K|Partial match: card member\u2019s name matches, but billing address and billing postal code do not match. Returned only for the American Express card type.|\n|L|Partial match: card member\u2019s name and billing postal code match, but billing address does not match. Returned only for the American Express card type.|\n|M|See the entry for D & M.|\n|N|No match: one of the following: street address and postal code do not match _or_ (American Express card type only) card member\u2019s name, street address, and postal code do not match.|\n|O|Partial match: card member\u2019s name and billing address match, but billing postal code does not match. Returned only for the American Express card type.|\n|P|Partial match: postal code matches, but street address not verified. Returned only for Visa cards not issued in the U.S.|\n|R|System unavailable.|\n|S|Not supported: issuing bank in the U.S. does not support AVS.|\n|T|Partial match: card member\u2019s name does not match, but street address matches. Returned only for the American Express card type.|\n|U|System unavailable: address information unavailable for one of these reasons: The U.S. bank does not support AVS outside the U.S. _or_ The AVS in a U.S. bank is not functioning properly.|\n|V|Match: card member\u2019s name, billing address, and billing postal code match. Returned only for the American Express card type.|\n|W|Partial match: street address does not match, but 9-digit postal code matches.|\n|X|Match: street address and 9-digit postal code match.|\n|Y|Match: street address and 5-digit postal code match.|\n|Z|Partial match: street address does not match, but 5-digit postal code matches.|\n|1|Not supported: one of the following: AVS is not supported for this processor or card type _or_ AVS is disabled for your CyberSource account. To enable AVS, contact CyberSource Customer Support.|\n|2|Unrecognized: the processor returned an unrecognized value for the AVS response.|\n|3|Match: address is confirmed. Returned only for PayPal Express Checkout.|\n|4|No match: address is not confirmed. Returned only for PayPal Express Checkout.|\n|5|No match: no AVS code was returned by the processor.|\n" - }, - "secCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nAccepts only the following values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "terminalCity": { - "type": "string", - "maxLength": 4, - "description": "City in which the terminal is located. If more than four alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" - }, - "terminalState": { - "type": "string", - "maxLength": 2, - "description": "State in which the terminal is located. If more than two alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" - }, - "effectiveDate": { - "type": "string", - "maxLength": 8, - "description": "Effective date for the transaction. The effective date must be within 45 days of the current day. If you do not\ninclude this value, CyberSource sets the effective date to the next business day.\n\nFormat: `MMDDYYYY`\n\nSupported only for the CyberSource ACH Service.\n" - }, - "partialPaymentId": { - "type": "string", - "maxLength": 25, - "description": "Identifier for a partial payment or partial credit.\n\nThe value for each debit request or credit request must be unique within the scope of the order.\nFor details, see `partial_payment_id` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "customerMemo": { - "type": "string", - "maxLength": 80, - "description": "Payment related information.\n\nThis information is included on the customer\u2019s statement.\n" - }, - "paymentCategoryCode": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether to process the payment.\n\nUse with deferred payments.\nFor details, see `ecp_payment_mode` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n\nPossible values:\n- `0`: Standard debit with immediate payment (default).\n- `1`: For deferred payments, indicates that this is a deferred payment and that you will send a debit request\nwith `paymentCategoryCode = 2` in the future.\n- `2`: For deferred payments, indicates notification to initiate payment.\n\n#### Chase Paymentech Solutions and TeleCheck\nUse for deferred and partial payments.\n\n#### CyberSource ACH Service\nNot used.\n\n#### RBS WorldPay Atlanta\nNot used.\n" - }, - "settlementMethod": { - "type": "string", - "maxLength": 1, - "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "fraudScreeningLevel": { - "type": "string", - "maxLength": 1, - "description": "Level of fraud screening.\n\nPossible values:\n- `1`: Validation \u2014 default if the field has not already been configured for your merchant ID\n- `2`: Verification\n\nFor a description of this feature and a list of supported processors, see \"Verification and Validation\" in the [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - }, - "customerPresent": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a customer is physically present and whether the customer is enrolling in CyberSource Recurring Billing.\n\nPossible values:\n- `1`: Customer is present and not enrolling.\n- `2`: Customer is not present and not enrolling.\n- `3`: Customer is present and enrolling.\n- `4`: Customer is not present and enrolling.\n" - } - } - }, - "purchaseOptions": { - "type": "object", - "properties": { - "isElectronicBenefitsTransfer": { - "type": "boolean", - "description": "Flag that indicates whether this transaction is an EBT transaction. Possible values:\n- `true`\n- `false`\n\n#### PIN debit\nRequired field for EBT and EBT voucher transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" - }, - "type": { - "type": "string", - "maxLength": 6, - "description": "Flag that indicates an EBT voucher transaction. Possible value:\n- `EBT_VOUCHER`: Indicates the PIN debit transaction is an EBT voucher.\n\n#### PIN debit\nRequired field for EBT voucher transactions that use PIN debit purchase; otherwise, not used.\n" - } - } - }, - "electronicBenefitsTransfer": { - "type": "object", - "properties": { - "category": { - "type": "string", - "maxLength": 4, - "description": "Flag that specifies the category for the EBT transaction.\n\nPossible values:\n- `CASH`: Cash benefits, which can be used to purchase any item at a participating retailer, as well as to obtain cash-back or make a cash withdrawal from a participating ATM.\n- `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program.\n\n#### PIN debit\nRequired field for EBT transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" - }, - "voucherSerialNumber": { - "type": "string", - "maxLength": 15, - "description": "The serial number printed on the EBT voucher.\n\n#### PIN debit\nRequired field for EBT voucher transactions that use PIN debit purchase; otherwise, not used.\n" - } - } - }, - "loanOptions": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 20, - "description": "Type of loan based on an agreement between you and the issuer.\nExamples: AGROCUSTEIO, AGRO-INVEST, BNDES-Type1, CBN, FINAME.\nThis field is supported only for these kinds of payments:\n- BNDES transactions on CyberSource through VisaNet.\n- Installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nSee \"\"Installment Payments on CyberSource through VisaNet,\"\" in the SCMP/SO guide\n\nFor BNDES transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR2, Position: 27-46, Field: Loan Type\n\nFor installment payments with Mastercard in Brazil, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR4, Position: 5-24,Field: Financing Type\n" - }, - "assetType": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a loan is for a recoverable item or a non-recoverable item.\nPossible values:\n- `N`: non-recoverable item\n- `R`: recoverable item\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n Record: CP07 TCR2, Position: 26, Field: Asset Indicator\n" - } - } - }, - "walletType": { - "type": "string", - "maxLength": 5, - "description": "This field carries the wallet type in authorization requests and credit requests. Possible value are:\n- `101`: Masterpass remote payment. The customer created the wallet by manually interacting with a customer-controlled device such as a computer, tablet, or phone. This value is supported only for Masterpass transactions on Chase Paymentech Solutions and CyberSource through VisaNet.\n- `102`: Masterpass remote near field communication (NFC) payment. The customer created the wallet by tapping a PayPass card or customer-controlled device at a contactless card reader. This value is supported only for card-present Masterpass transactions on CyberSource through VisaNet.\n- `103`: Masterpass Apple Pay payment. The payment was made with a combination of Masterpass and Apple Pay. This value is supported only for Masterpass Apple Pay transactions on CyberSource through VisaNet.\n- `216`: Masterpass Google Pay payment. The payment was made with a combination of Masterpass and Google Pay. This value is supported only for Masterpass Google Pay transactions on CyberSource through VisaNet.\n- `217`: Masterpass Samsung Pay payment. The payment was made with a combination of Masterpass and Samsung Pay. This value is supported only for Masterpass Samsung Pay transactions on CyberSource through VisaNet.\n- `SDW`: Staged digital wallet. An issuer or operator created the wallet. This value is supported only for Masterpass transactions on Chase Paymentech Solutions.\n- `VCIND`: Visa Checkout payment. This value is supported only on CyberSource through VisaNet, FDC Compass, FDC Nashville Global, FDI Australia, and TSYS Acquiring Solutions. See Getting Started with Visa Checkout. For Visa Checkout transactions, the way CyberSource processes the value for this field depends on the processor. See the Visa Checkout section below.\nFor all other values, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nMasterpass (101, 102, 103, 216, and 217): The Masterpass platform generates the wallet type value and passes it to you along with the customer\u2019s checkout information.\n\nVisa Checkout:\nThis field is optional for Visa Checkout authorizations on FDI Australia. For all other processors, this field is required for Visa Checkout authorizations.\nFor Visa Checkout transactions on the following processors, CyberSource sends the value that the processor expects for this field:FDC Compass,FDC Nashville Global,FDI Australia,TSYS Acquiring\nSolutions For all other processors, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nFor incremental authorizations, this field is supported only for Mastercard and the supported values are 101 and 102.\nPayment card companies can introduce new values without notice. Your order management system should be able to process new values without problems.\n\nCyberSource through VisaNet\nWhen the value for this field is 101, 102, 103, 216, or 217, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR6, Position: 88-90, Field: Mastercard Wallet Identifier.\nWhen the value for this field is VCIND, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR8, Position: 72-76, Field: Agent Unique ID.\n" - }, - "nationalNetDomesticData": { - "type": "string", - "maxLength": 123, - "description": "Supplementary domestic transaction information provided by the acquirer for National Net Settlement Service (NNSS) transactions. NNSS is a settlement service that Visa provides.\nFor transactions on CyberSource through VisaNet in countries that subscribe to NNSS:\nVisaNet clears transactions; VisaNet transfers funds to the acquirer after deducting processing fees and interchange fees.\nVisaNet settles transactions in the local pricing currency through a local financial institution.\nThis field is supported only on CyberSource through VisaNet for domestic data in Colombia\n" - }, - "japanPaymentOptions": { - "type": "object", - "properties": { - "paymentMethod": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" - }, - "installments": { - "type": "string", - "maximum": 99, - "description": "Number of Installments.\n" - }, - "terminalId": { - "type": "string", - "maxLength": 13, - "description": "Unique Japan Credit Card Association (JCCA) terminal identifier.\n\nThe difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define\n`pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is\ndefined by the JCCA and is used only in Japan.\n\nThis field is supported only on CyberSource through VisaNet and JCN Gateway.\n\nOptional field.\n" - }, - "firstBillingMonth": { - "type": "string", - "maxLength": 2, - "description": "Billing month in MM format.\n" - }, - "businessName": { - "type": "string", - "maxLength": 25, - "description": "Business name in Japanese characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" - }, - "businessNameKatakana": { - "type": "string", - "maxLength": 25, - "description": "Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" - }, - "jis2TrackData": { - "type": "string", - "maxLength": 69, - "description": "Japanese Industrial Standard Type 2 (JIS2) track data from the front of the card.\n\nThis field is supported only on CyberSource through VisaNet and JCN Gateway.\n\nOptional field.\n" - }, - "businessNameAlphaNumeric": { - "type": "string", - "maxLength": 25, - "description": "Business name in alphanumeric characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" - } - } - }, - "mobileRemotePaymentType": { - "type": "string", - "maxLength": 1, - "description": "Type of payment initiated from a cardholder's mobile device. Possible values:\n- `1` : Consumer-initiated remote purchase, face-to-face\n- `2` : Consumer-initiated remote purchase, e-commerce\n- `3` : Consumer-initiated remote purchase, mail order / telephone order\n- `4` : Consumer-initiated bill pay\n- `5` : Consumer-initiated top up\n- `6` : Consumer-initiated cash out\n- `7` : ATM triggered or agent-initiated cash out\n- `8` : Merchant-initiated remote purchase, face-to-face\n- `9` : Merchant-initiated remote purchase, e-commerce\n\nThis field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nOptional field.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the\nTC 33 capture file:\n- Record: CP01 TCR6\n- Position: 94\n- Field: Mastercard Mobile Remote Payment Program Indicator\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the\nmerchant\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n" - }, - "extendedCreditTotalCount": { - "type": "string", - "maxLength": 1, - "description": "A private national-use field submitted by acquirers and issuers in South Africa for South Africa-domestic (intra-country) authorizations and financial requests.\nValues for this field are 00 through 99.\n" - }, - "networkRoutingOrder": { - "type": "string", - "maxLength": 30, - "description": "On PIN Debit Gateways: This U.S.-only field is optionally used by participants (merchants and acquirers) to specify the network access priority.\nVisaNet checks to determine if there are issuer routing preferences for any of the networks specified by the sharing group code.\nIf an issuer preference exists for one of the specified debit networks, VisaNet makes a routing selection based on the issuer\u2019s preference.\nIf an issuer preference exists for more than one of the specified debit networks, or if no issuer preference exists,\nVisaNet makes a selection based on the acquirer\u2019s routing priorities.\n\n#### PIN debit\nPriority order of the networks through which he transaction will be routed. Set this value to a series of one-character network codes in your preferred order. This is a list of the network codes:\n\n| Network | Code |\n| --- | --- |\n| Accel | E |\n| AFFN | U |\n| Alaska Option | 3 |\n| CU24 | C |\n| Interlink | G |\n| Maestro | 8 |\n| NETS | P |\n| NYCE | F |\n| Pulse | H |\n| Shazam | 7 |\n| Star | M |\n| Visa | V |\n\nFor example, if the Star network is your first preference and Pulse is your second preference, set this field to a value of `MH`.\n\nWhen you do not include this value in your PIN debit request, the list of network codes from your account is used.\n**Note** This field is supported only for businesses located in the U.S.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "payByPointsIndicator": { - "type": "boolean", - "description": "Flag that indicates if the transaction is pay by points transaction\ntrue: Transaction uses loyalty points\nfalse: Transaction does not use loyalty points\nDefault: false\n" - }, - "isReturnAuthRecordEnabled": { - "type": "boolean", - "description": "Flag that indicates the functionality we are having for merchants for which auth is done through Cybersource but\nsettlement is done by themselves.\ntrue: functionality is supported. Processor should send raw processor auth response to Merchant.\nfalse: functionality is not supported.\nDefault: false\n" - } - } - }, - "issuerInformation": { - "type": "object", - "properties": { - "discretionaryData": { - "type": "string", - "maxLength": 255, - "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "useAs": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\n#### Cielo and Comercio Latino\n\nPossible values:\n\n - CREDIT: Credit card\n - DEBIT: Debit card\n\nThis field is required for:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n\n**Note** The value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR0\n- Position: 51\n- Field: Combination Card Transaction Identifier\n\nThis field is supported only for Mastercard transactions in Brazil on CyberSource through VisaNet.\n" - }, - "sourceAccountType": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" - }, - "sourceAccountTypeDetails": { - "type": "string", - "maxLength": 4, - "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n\n#### FDMS Nashville\nRequired for American Express or if swiped; otherwise, optional.\n\n#### Ingenico ePayments\nDo not include this field when `commerceIndicator=recurring`.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\n#### TSYS Acquiring Solutions\nOptional if pointOfSaleInformation.entryMode=keyed; otherwise, not used.\n\n#### GPX\nOptional.\n\n#### All other processors:\nOptional.\n" - }, - "securityCodeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" - }, - "accountEncoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 5, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "productName": { - "type": "string", - "maxLength": 15, - "description": "Name of the card product.\n\nPossible value:\n- BNDES\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 115-120\n- Field: Brazil Country Data\n" - }, - "typeSelectionIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag that identifies how the card type was selected.\n\nPossible values:\n- 0: Card type was selected based on default acquirer settings.\n- 1: Customer selected the card type.\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "cryptogram": { - "type": "string", - "maxLength": 255, - "description": "This field contains token information." - }, - "requestorId": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "assuranceLevel": { - "type": "string", - "maxLength": 2, - "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" - }, - "storageMethod": { - "type": "string", - "maxLength": 3, - "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "securityCodeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" - } - } - }, - "fluidData": { - "type": "object", - "properties": { - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 12, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "legacyToken": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 16, - "maxLength": 22 - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 1, - "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" - }, - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "encoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "checkNumber": { - "type": "string", - "maxLength": 8, - "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" - }, - "checkImageReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Image reference number associated with the check. You cannot include any special characters.\n" - } - } - }, - "routingNumber": { - "type": "string", - "maxLength": 9, - "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "iban": { - "type": "string", - "maxLength": 50, - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "swiftCode": { - "type": "string", - "description": "Bank\u2019s SWIFT code. You can use this field only when scoring a direct debit transaction.\nRequired only for crossborder transactions.\n\nFor all possible values, see the `bank_swiftcode` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - }, - "initiationChannel": { - "type": "string", - "maxLength": 2, - "description": "Mastercard-defined code that indicates how the account information was obtained.\n\n- `00` (default): Card\n- `01`: Removable secure element that is personalized for use with a mobile phone and controlled by the wireless service provider; examples: subscriber identity module (SIM), universal integrated circuit card (UICC)\n- `02`: Key fob\n- `03`: Watch\n- `04`: Mobile tag\n- `05`: Wristband\n- `06`: Mobile phone case or sleeve\n- `07`: Mobile phone with a non-removable, secure element that is controlled by the wireless service provider; for example, code division multiple access (CDMA)\n- `08`: Removable secure element that is personalized for use with a mobile phone and not controlled by the wireless service provider; example: memory card\n- `09`: Mobile phone with a non-removable, secure element that is not controlled by the wireless service provider\n- `10`: Removable secure element that is personalized for use with a tablet or e-book and is controlled by the wireless service provider; examples: subscriber identity module (SIM), universal integrated circuit card (UICC)\n- `11`: Tablet or e-book with a non-removable, secure element that is controlled by the wireless service provider\n- `12`: Removable secure element that is personalized for use with a tablet or e-book and is not controlled by the wireless service provider\n- `13`: Tablet or e-book with a non-removable, secure element that is not controlled by the wireless service provider\n\nThis field is supported only for Mastercard on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional field.\n" - }, - "eWallet": { - "type": "object", - "properties": { - "accountId": { - "type": "string", - "maxLength": 26, - "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" - }, - "subTotalAmount": { - "type": "string", - "maxLength": 15, - "description": "Subtotal amount of all the items.This amount (which is the value of all items in the cart, not including the additional amounts such as tax, shipping, etc.) cannot change after a sessions request.\nWhen there is a change to any of the additional amounts, this field should be resent in the order request. When the sub total amount changes, you must initiate a new transaction starting with a sessions request.\nNote The amount value must be a non-negative number containing 2 decimal places and limited to 7 digits before the decimal point. This value can not be changed after a sessions request.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n" - }, - "nationalTaxIncluded": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" - }, - "taxAppliedLevel": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 3, - "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" - }, - "freightAmount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "foreignAmount": { - "type": "string", - "maxLength": 15, - "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "description": "Set this field to the converted amount that was returned by the DCC provider.\n" - }, - "exchangeRate": { - "type": "string", - "maxLength": 13, - "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" - }, - "exchangeRateTimeStamp": { - "type": "string", - "maxLength": 14, - "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" - }, - "surcharge": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 15, - "description": "The surcharge amount is included in the total transaction amount but is passed in a separate field to the issuer and acquirer for tracking. The issuer can provide information about the surcharge amount to the customer.\n\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n\n**NOTE**: This field is supported only for CyberSource through VisaNet (CtV) for Payouts. For CtV, the maximum string length is 8.\n\n#### PIN debit\nSurcharge amount that you are charging the customer for this transaction. If you include a surcharge amount\nin the request, you must also include the surcharge amount in the value for `orderInformation.amountDetails.totalAmount`.\n\nOptional field for transactions that use PIN debit credit or PIN debit purchase.\n" - }, - "description": { - "type": "string", - "description": "Merchant-defined field for describing the surcharge amount." - } - } - }, - "settlementAmount": { - "type": "string", - "maxLength": 12, - "description": "This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder\u2019s account.\nThis field is returned for OCT transactions.\n" - }, - "settlementCurrency": { - "type": "string", - "maxLength": 3, - "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder's account.\nThis field is returned for OCT transactions.\n" - }, - "amexAdditionalAmounts": { - "type": "array", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "amount": { - "type": "string", - "maxLength": 12, - "description": "Additional amount. This field is supported only for **American Express Direct**.\n" - } - } - } - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - }, - "originalAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount in your original local pricing currency.\n\nThis value cannot be negative. You can include a decimal point (.) in this field to denote the currency\nexponent, but you cannot include any other special characters.\n\nIf needed, CyberSource truncates the amount to the correct number of decimal places.\n" - }, - "originalCurrency": { - "type": "string", - "maxLength": 15, - "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "cashbackAmount": { - "type": "string", - "maxLength": 13, - "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" - }, - "currencyConversion": { - "type": "object", - "properties": { - "indicator": { - "type": "string", - "maxLength": 1, - "description": "Flag indicating that DCC Lookup has been performed before this transaction. Set this field to 1 when cardholders opts to use DCC on the transaction.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Unique identifier generated by the DCC provider.\n" - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "Value of the Cybersource request ID returned in a DCC Lookup transaction.\n" - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "middleName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s middle name.\n" - }, - "nameSuffix": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s name suffix.\n" - }, - "title": { - "type": "string", - "maxLength": 60, - "description": "Title.\n" - }, - "company": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "address1": { - "type": "string", - "maxLength": 40, - "description": "First line in the street address of the company purchasing the product." - }, - "address2": { - "type": "string", - "maxLength": 40, - "description": "Additional address information for the company purchasing the product." - }, - "locality": { - "type": "string", - "maxLength": 30, - "description": "City in the address of the company purchasing the product." - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - } - } - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "address3": { - "type": "string", - "maxLength": 60, - "description": "Additional address information (third line of the billing address)\n" - }, - "address4": { - "type": "string", - "maxLength": 60, - "description": "Additional address information (fourth line of the billing address)\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "district": { - "type": "string", - "maxLength": 50, - "description": "Customer\u2019s neighborhood, community, or region (a barrio in Brazil) within the city or municipality. This\nfield is available only on **Cielo**.\n" - }, - "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" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "emailDomain": { - "type": "string", - "maxLength": 100, - "description": "Email domain of the customer. The domain of the email address comprises all characters that follow the @ symbol, such as mail.example.com. For the Risk Update service, if the email address and the domain are sent in the request, the domain supersedes the email address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneType": { - "type": "string", - "description": "Customer's phone number type.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nPossible Values:\n* day\n* home\n* night\n* work\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "The title of the person receiving the product.", - "maxLength": 10 - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "middleName": { - "type": "string", - "maxLength": 60, - "description": "Middle name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "district": { - "type": "string", - "maxLength": 50, - "description": "Neighborhood, community, or region within a city or municipality." - }, - "buildingNumber": { - "type": "string", - "maxLength": 15, - "description": "Building number in the street address. For example, the building number is 187 in the following address:\n\nRua da Quitanda 187\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nFor processor-specific information, see the company_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "destinationTypes": { - "type": "string", - "maxLength": 25, - "description": "Shipping destination of item. Example: Commercial, Residential, Store\n" - }, - "destinationCode": { - "type": "integer", - "maxLength": 2, - "description": "Indicates destination chosen for the transaction. Possible values:\n- 01- Ship to cardholder billing address\n- 02- Ship to another verified address on file with merchant\n- 03- Ship to address that is different than billing address\n- 04- Ship to store (store address should be populated on request)\n- 05- Digital goods\n- 06- Travel and event tickets, not shipped\n- 07- Other\n" - }, - "method": { - "type": "string", - "maxLength": 10, - "description": "Shipping method for the product. Possible values:\n- lowcost: Lowest-cost service\n- sameday: Courier or same-day service\n- oneday: Next-day or overnight service\n- twoday: Two-day service\n- threeday: Three-day service\n- pickup: Store pick-up\n- other: Other shipping method\n- none: No shipping method because product is a service or subscription\nRequired for American Express SafeKey (U.S.).\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "unitOfMeasure": { - "type": "string", - "maxLength": 12, - "description": "Unit of measure, or unit of measure code, for the item.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - }, - "taxRate": { - "type": "string", - "maxLength": 7, - "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" - }, - "taxStatusIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "amountIncludesTax": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "typeOfSupply": { - "type": "string", - "maxLength": 2, - "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 13, - "description": "Discount applied to the item." - }, - "discountApplied": { - "type": "boolean", - "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "discountRate": { - "type": "string", - "maxLength": 6, - "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 23, - "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "fulfillmentType": { - "type": "string", - "description": "Information about the product code used for the line item.\nPossible values:\n- `E`: The product code is `electronic_software`.\n- `P`: The product code is not `electronic_software`.\n\nFor details, see the `fulfillmentType` field description in [Business Center Reporting User Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/reporting_and_reconciliation/Reporting_User/html/)\n" - }, - "weight": { - "type": "string", - "maxLength": 9, - "description": "Weight of the item.\n\nFor details, see `weight_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "weightIdentifier": { - "type": "string", - "maxLength": 1, - "description": "Type of weight.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\n\nFor details, see `weight_identifier` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "weightUnit": { - "type": "string", - "maxLength": 2, - "description": "Code that specifies the unit of measurement for the weight amount. For example, `OZ` specifies ounce and `LB` specifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nFor details, see `weight_unit_measurement` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "referenceDataCode": { - "type": "string", - "maxLength": 2, - "description": "Code that identifies the value of the corresponding `orderInformation.lineItems[].referenceDataNumber` field.\n\nPossible values:\n- AN: Client-defined asset code\n- MG: Manufacturer's part number\n- PO: Purchase order number\n- SK: Supplier stock keeping unit number\n- UP: Universal product code\n- VC: Supplier catalog number\n- VP: Vendor part number\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n\nFor details, see `reference_data_#_code` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "referenceDataNumber": { - "type": "string", - "maxLength": 30, - "description": "Reference number.\n\nThe meaning of this value is identified by the value of the corresponding `referenceDataCode` field.\nSee Numbered Elements.\n\nThe maximum length for this field depends on the value of the corresponding `referenceDataCode` field:\n- When the code is `PO`, the maximum length for the reference number is 22.\n- When the code is `VC`, the maximum length for the reference number is 20.\n- For all other codes, the maximum length for the reference number is 30.\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" - }, - "productDescription": { - "type": "string", - "description": "Brief description of item." - }, - "giftCardCurrency": { - "type": "integer", - "maxLength": 3, - "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "shippingDestinationTypes": { - "type": "string", - "maxLength": 50, - "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" - }, - "gift": { - "type": "boolean", - "description": "This field is only used in DM service.\n\nDetermines whether to assign risk to the order if the billing and shipping addresses specify different cities,\nstates, or countries. This field can contain one of the following values:\n- true: Orders are assigned only slight additional risk if billing and shipping addresses are different.\n- false: Orders are assigned higher additional risk if billing and shipping addresses are different.\n" - }, - "passenger": { - "type": "object", - "description": "Contains travel-related passenger details used by DM service only.", - "properties": { - "type": { - "type": "string", - "maxLength": 32, - "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" - }, - "status": { - "type": "string", - "maxLength": 32, - "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" - }, - "phone": { - "type": "string", - "maxLength": 15, - "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's first name." - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's last name." - }, - "id": { - "type": "string", - "maxLength": 40, - "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." - }, - "nationality": { - "type": "string", - "maxLength": 2, - "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." - } - } - } - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "barcodeNumber": { - "type": "string", - "description": "Barcode Number." - }, - "expirationDate": { - "type": "string", - "description": "Expiration Date." - }, - "purchaseOrderNumber": { - "type": "string", - "maxLength": 25, - "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseContactName": { - "type": "string", - "maxLength": 36, - "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - }, - "vatInvoiceReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 4, - "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "merchandiseCode": { - "type": "integer", - "description": "Identifier for the merchandise. This field is supported only on the processors listed in this field description.\n\n#### American Express Direct\nPossible value:\n- 1000: Gift card\n\n#### CyberSource through VisaNet\nThis value must be right justified. In Japan, this value is called a _goods code_.\n\n#### JCN Gateway\nThis value must be right justified. In Japan, this value is called a _goods code_.\n" - }, - "transactionAdviceAddendum": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "maxLength": 40, - "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" - } - } - } - }, - "referenceDataCode": { - "type": "string", - "maxLength": 3, - "description": "Code that identifies the value of the `referenceDataNumber` field.\n\nFor the possible values, see \"Reference Data Codes\" in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/).\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" - }, - "referenceDataNumber": { - "type": "string", - "maxLength": 30, - "description": "Reference number. The meaning of this value is identified by the value of the `referenceDataCode` field.\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" - }, - "salesSlipNumber": { - "type": "integer", - "maximum": 99999, - "description": "Transaction identifier that is generated. You have the option of printing the sales slip number on the receipt.\nThis field is supported only on Cybersource through Visanet and JCN gateway.\n\nOptional field.\n\n#### Card Present processing message\nIf you included this field in the request, the returned value is the value that you sent in the request.\nIf you did not include this field in the request, the system generated this value for you.\n\nThe difference between this reply field and the `processorInformation.systemTraceAuditNumber` field is that the\nsystem generates the system trace audit number (STAN), and you must print the receipt number on the receipt;\nwhereas you can generate the sales slip number, and you can choose to print the sales slip number on the receipt.\n" - }, - "invoiceDate": { - "type": "string", - "maxLength": 8, - "description": "Date of the tax calculation. Use format YYYYMMDD. You can provide a date in the past if you are calculating tax for a refund and want to know what the tax was on the date the order was placed.\nYou can provide a date in the future if you are calculating the tax for a future date, such as an upcoming tax holiday.\n\nThe default is the date, in Pacific time, that the bank receives the request.\nKeep this in mind if you are in a different time zone and want the tax calculated with the rates that are applicable on a specific date.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "costCenter": { - "type": "string", - "maxLength": 25, - "description": "Cost centre of the merchant" - }, - "issuerMessage": { - "type": "string", - "maxLength": 41, - "description": "Text message from the issuer. If you give the customer a receipt, display this value on the receipt." - } - } - }, - "shippingDetails": { - "type": "object", - "description": "Contains shipping information not related to address.", - "properties": { - "giftWrap": { - "type": "boolean", - "description": "Boolean that indicates whether the customer requested gift wrapping for this\npurchase. This field can contain one of the following\nvalues:\n- true: The customer requested gift wrapping.\n- false: The customer did not request gift wrapping.\n" - }, - "shippingMethod": { - "type": "string", - "maxLength": 10, - "description": "Shipping method for the product. Possible values:\n\n - `lowcost`: Lowest-cost service\n - `sameday`: Courier or same-day service\n - `oneday`: Next-day or overnight service\n - `twoday`: Two-day service\n - `threeday`: Three-day service\n - `pickup`: Store pick-up\n - `other`: Other shipping method\n - `none`: No shipping method because product is a service or subscription\n" - }, - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" - } - } - }, - "returnsAccepted": { - "type": "boolean", - "description": "This is only needed when you are requesting both payment and DM service at same time.\n\nBoolean that indicates whether returns are accepted for this order.\nThis field can contain one of the following values:\n- true: Returns are accepted for this order.\n- false: Returns are not accepted for this order.\n" - }, - "isCryptocurrencyPurchase": { - "type": "string", - "description": "#### Visa Platform Connect :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nAdditional values to add :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nvalid values are\n- Y/y, true\n- N/n, false\n" - }, - "preOrder": { - "type": "string", - "description": "Indicates whether cardholder is placing an order with a future availability or release date.\nThis field can contain one of these values:\n- MERCHANDISE_AVAILABLE: Merchandise available\n- FUTURE_AVAILABILITY: Future availability\n" - }, - "preOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD\n" - }, - "reordered": { - "type": "boolean", - "description": "Indicates whether the cardholder is reordering previously purchased merchandise.\nThis field can contain one of these values:\n- false: First time ordered\n- true: Reordered\n" - }, - "totalOffersCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of articles/items in the order as a numeric decimal count.\nPossible values: 00 - 99\n" - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "dateOfBirth": { - "type": "string", - "maxLength": 8, - "description": "Recipient\u2019s date of birth. **Format**: `YYYYMMDD`.\n\nThis field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters\nbut otherwise does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "companyTaxId": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n\n** TeleCheck **\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n** All Other Processors **\nNot used.\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" - }, - "issuedBy": { - "type": "string", - "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "verificationResults": { - "type": "string", - "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" - } - } - } - }, - "hashedPassword": { - "type": "string", - "maxLength": 100, - "description": "The merchant's password that CyberSource hashes and stores as a hashed password.\n\nFor details about this field, see the `customer_password` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "gender": { - "type": "string", - "maxLength": 3, - "description": "Customer's gender. Possible values are F (female), M (male),O (other)." - }, - "language": { - "type": "string", - "maxLength": 2, - "description": "language setting of the user" - }, - "mobilePhone": { - "type": "integer", - "maxLength": 25, - "description": "Cardholder\u2019s mobile phone number.\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - } - } - }, - "recipientInformation": { - "type": "object", - "properties": { - "accountId": { - "type": "string", - "maxLength": 10, - "description": "Identifier for the recipient\u2019s account. Use the first six digits and last four digits of the recipient\u2019s account\nnumber. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in\nany way before sending it to the processor. If the field is not required for the transaction, CyberSource does\nnot forward it to the processor.\n\nFor details, see the `recipient_account_id` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "lastName": { - "type": "string", - "maxLength": 6, - "description": "Recipient\u2019s last name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n\nFor details, see the `recipient_lastname` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "middleName": { - "type": "string", - "maxLength": 35, - "description": "Recipient\u2019s middle name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n\nFor details, see the `recipient_middlename` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 6, - "description": "Partial postal code for the recipient\u2019s address. For example, if the postal code is **NN5 7SG**, the value for\nthis field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor details, see the `recipient_postal_code` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "userAgent": { - "type": "string", - "maxLength": 40, - "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" - }, - "fingerprintSessionId": { - "type": "string", - "description": "Field that contains the session ID that you send to Decision Manager to obtain the device fingerprint\ninformation. The string can contain uppercase and lowercase letters, digits, hyphen (-), and\nunderscore (_). However, do not use the same uppercase and lowercase letters to indicate\ndifferent session IDs.\n\nThe session ID must be unique for each merchant ID. You can use any string that you are already\ngenerating, such as an order number or web session ID.\n\nThe session ID must be unique for each page load, regardless of an individual\u2019s web session ID.\nIf a user navigates to a profiled page and is assigned a web session, navigates away from the\nprofiled page, then navigates back to the profiled page, the generated session ID should be different\nand unique. You may use a web session ID, but it is preferable to use an application GUID (Globally\nUnique Identifier). This measure ensures that a unique ID is generated every time the page is\nloaded, even if it is the same user reloading the page.\n" - }, - "useRawFingerprintSessionId": { - "type": "boolean", - "description": "Boolean that indicates whether request contains the device fingerprint information.\nValues:\n- `true`: Use raw fingerprintSessionId when looking up device details.\n- `false` (default): Use merchant id + fingerprintSessionId as the session id for Device detail collection.\n" - }, - "deviceType": { - "type": "string", - "maxLength": 60, - "description": "The device type at the client side." - }, - "rawData": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "description": "Field that contains the device fingerprint data from the specified provider. The value should be Base64 encoded.\n" - }, - "provider": { - "type": "string", - "maxLength": 32, - "description": "Possible values:\n- cardinal\n- inauth\n- threatmetrix\n" - } - } - } - }, - "httpAcceptBrowserValue": { - "type": "string", - "maxLength": 255, - "description": "Value of the Accept header sent by the customer\u2019s web browser.\n**Note** If the customer\u2019s browser provides a value, you must include it in your request.\n" - }, - "httpAcceptContent": { - "type": "string", - "maxLength": 256, - "description": "The exact content of the HTTP accept header.\n" - }, - "httpBrowserEmail": { - "type": "string", - "description": "Email address set in the customer\u2019s browser, which may differ from customer email.\n" - }, - "httpBrowserLanguage": { - "type": "string", - "maxLength": 8, - "description": "Value represents the browser language as defined in IETF BCP47.\nExample:en-US, refer https://en.wikipedia.org/wiki/IETF_language_tag for more details.\n" - }, - "httpBrowserJavaEnabled": { - "type": "boolean", - "description": "A Boolean value that represents the ability of the cardholder browser to execute Java.\nValue is returned from the navigator.javaEnabled property. Possible Values:True/False\n" - }, - "httpBrowserJavaScriptEnabled": { - "type": "boolean", - "description": "A Boolean value that represents the ability of the cardholder browser to execute JavaScript. Possible Values:True/False.\n**Note**: Merchants should be able to know the values from fingerprint details of cardholder's browser.\n" - }, - "httpBrowserColorDepth": { - "type": "string", - "maxLength": 2, - "description": "Value represents the bit depth of the color palette for displaying images, in bits per pixel.\nExample : 24, refer https://en.wikipedia.org/wiki/Color_depth for more details\n" - }, - "httpBrowserScreenHeight": { - "type": "string", - "maxLength": 6, - "description": "Total height of the Cardholder's scree in pixels, example: 864.\n" - }, - "httpBrowserScreenWidth": { - "type": "string", - "maxLength": 6, - "description": "Total width of the cardholder's screen in pixels. Example: 1536.\n" - }, - "httpBrowserTimeDifference": { - "type": "string", - "maxLength": 5, - "description": "Time difference between UTC time and the cardholder browser local time, in minutes, Example:300\n" - }, - "userAgentBrowserValue": { - "type": "string", - "maxLength": 255, - "description": "Value of the User-Agent header sent by the customer\u2019s web browser.\nNote If the customer\u2019s browser provides a value, you must include it in your request.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "alternateName": { - "type": "string", - "maxLength": 13, - "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" - }, - "contact": { - "type": "string", - "maxLength": 14, - "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "administrativeArea": { - "type": "string", - "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "phone": { - "type": "string", - "maxLength": 13, - "description": "Merchant phone as contact information for CNP transactions\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - }, - "countryOfOrigin": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" - } - } - }, - "domainName": { - "type": "string", - "maxLength": 127, - "description": "This field will contain either the merchant url or the reverse domain as per the requirement for DSRP Format 3. This might vary transaction to transaction and might not be static. Merchant needs to have access to send this value for all DSRP program.\n" - }, - "salesOrganizationId": { - "type": "string", - "maxLength": 11, - "description": "Company ID assigned to an independent sales organization. Get this value from Mastercard.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 106-116\n- Field: Mastercard Independent Sales Organization ID\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\nFor processor-specific information, see the `sales_organization_ID` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "categoryCode": { - "type": "integer", - "maximum": 9999, - "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" - }, - "categoryCodeDomestic": { - "type": "integer", - "maximum": 9999, - "description": "Merchant category code for domestic transactions. The value for this field is a four-digit number that the payment\ncard industry uses to classify merchants into market segments. A payment card company assigned one or more of these\nvalues to your business when you started accepting the payment card company\u2019s cards. Including this field in a request\nfor a domestic transaction might reduce interchange fees.\n\nWhen you include this field in a request:\n- Do not include the `merchant_category_code` field.\n- The value for this field overrides the value in your CyberSource account.\n\nThis field is supported only for:\n- Domestic transactions with Mastercard in Spain. Domestic means that you and the cardholder are in the same country.\n- Merchants enrolled in the OmniPay Direct interchange program.\n- First Data Merchant Solutions (Europe) on OmniPay Direct.\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "cardAcceptorReferenceNumber": { - "type": "string", - "maxLength": 25, - "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "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" - }, - "serviceFeeDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 22, - "description": "Name of the service provider that is collecting the service fee. The service provider name must consist of\n3, 7, or 12 characters followed by an asterisk (*). This value must also include the words \u201cService Fee.\u201d\n\nWhen you include more than one consecutive space, extra spaces are removed. Use one of the following formats\nfor this value:\n- <3-character name>*Service Fee\n- <7-character name>*Service Fee\n- <12-character name>*Service Fee\n\nWhen payments are made in installments, this value must also include installment information such as\n\u201c1 of 5\u201d or \u201c3 of 7.\u201d For installment payments, use one of the following formats for this value:\n- <3-character name>*Service Fee* of \n- <7-character name>*Service Fee* of \n- <12-character name>*Service Fee* of \n\nwhere is the payment number and is the total number of payments.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource\naccount.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" - }, - "contact": { - "type": "string", - "maxLength": 11, - "description": "Contact information for the service provider that is collecting the service fee. when you include more than one\nconsecutive space, extra spaces are removed.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" - }, - "state": { - "type": "string", - "maxLength": 20, - "description": "State or territory in which the service provider is located.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" - } - } - }, - "cancelUrl": { - "type": "string", - "maxLength": 255, - "description": "customer would be redirected to this url based on the decision of the transaction" - }, - "successUrl": { - "type": "string", - "maxLength": 255, - "description": "customer would be redirected to this url based on the decision of the transaction" - }, - "failureUrl": { - "type": "string", - "maxLength": 255, - "description": "customer would be redirected to this url based on the decision of the transaction" - }, - "merchantName": { - "type": "string", - "maxLength": 25, - "description": "Use this field only if you are requesting payment with Payer Authentication serice together.\n\nYour company\u2019s name as you want it to appear to the customer in the issuing bank\u2019s authentication form.\nThis value overrides the value specified by your merchant bank.\n" - } - } - }, - "aggregatorInformation": { - "type": "object", - "properties": { - "aggregatorId": { - "type": "string", - "maxLength": 20, - "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "name": { - "type": "string", - "maxLength": 37, - "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "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.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" - }, - "name": { - "type": "string", - "maxLength": 37, - "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" - }, - "address1": { - "type": "string", - "maxLength": 38, - "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "locality": { - "type": "string", - "maxLength": 21, - "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "region": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s region.\n\n**Example**\\\n`NE` indicates that the sub-merchant is in the northeast region.\n\nFor processor-specific details, see `submerchant_region` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "email": { - "type": "string", - "maxLength": 40, - "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s 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" - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "cavv": { - "type": "string", - "maxLength": 40, - "description": "Cardholder authentication verification value (CAVV)." - }, - "cavvAlgorithm": { - "type": "string", - "maxLength": 1, - "description": "Algorithm used to generate the CAVV for Visa Secure or the UCAF authentication data for Mastercard Identity Check.\n" - }, - "eciRaw": { - "type": "string", - "maxLength": 2, - "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "paresStatus": { - "type": "string", - "maxLength": 1, - "description": "Payer authentication response status.\n\nFor details, see `pares_status` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "veresEnrolled": { - "type": "string", - "maxLength": 1, - "description": "Verification response enrollment status.\n\nFor details, see `veres_enrolled` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "xid": { - "type": "string", - "maxLength": 40, - "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "ucafCollectionIndicator": { - "type": "string", - "maxLength": 1, - "description": "Universal cardholder authentication field (UCAF) collection indicator.\n\nFor details, see `ucaf_collection_indicator` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR7\n- Position: 5\n- Field: Mastercard Electronic Commerce Indicators\u2014UCAF Collection Indicator\n" - }, - "ucafAuthenticationData": { - "type": "string", - "maxLength": 32, - "description": "Universal cardholder authentication field (UCAF) data.\n\nFor details, see `ucaf_authentication_data` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "strongAuthentication": { - "type": "object", - "properties": { - "lowValueExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the low value exemption indicator with one of the following values:\nPossible values:\n- `0` ( low value exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment)\n" - }, - "riskAnalysisExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the transaction risk analysis exemption indicator with one of the following values:\nPossible values:\n- `0` (TRA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS)\n" - }, - "trustedMerchantExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "Possible values:\n- `0` (Trusted merchant exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder)\n" - }, - "secureCorporatePaymentIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the secure corporate payment exemption indicator with one of the following values:\nPossible values:\n- `0` (SCA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment)\n" - }, - "delegatedAuthenticationExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the delegated authentication exemption indicator with one of the following values:\nPossible values:\n- `0` (delegated Authentication exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer))\n" - }, - "outageExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the outage exemption indicator with one of the following values:\nPossible values:\n- `0` (Outage Authentication exemption does not apply to the transaction)\n- `1` (Outage exempt from SCA as authentication could not be done due to outage)\n" - }, - "authenticationIndicator": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of Authentication request\n\n01 - Payment transaction\n\n02 - Recurring transaction\n\n03 - Installment transaction\n\n04 - Add card\n\n05 - Maintain card\n\n06 - Cardholder verification as part of EMV token ID and V\n" - } - } - }, - "directoryServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" - }, - "paSpecificationVersion": { - "type": "string", - "maxLength": 1, - "description": "This field contains 3DS version that was used for Secured Consumer Authentication (SCA). For example 3DS secure version 1.0.2 or 2.0.0 is used for Secured Consumer Authentication.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 113 , Field: MC AVV Verification\u2014Program Protocol\nIt will contain one of the following values:\n- `1` (3D Secure Version 1.0 (3DS 1.0))\n- `2` (EMV 3-D Secure (3DS 2.0))\n" - }, - "authenticationType": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" - }, - "responseAccessToken": { - "type": "string", - "description": "JWT returned by the 3D Secure provider when the authentication is complete. Required for Hybrid integration if you use the Cybersource-generated access token. Note: Max. length of this field is 2048 characters.\n" - }, - "acsTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\n" - }, - "acsWindowSize": { - "type": "string", - "maxLength": 2, - "description": "An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.\n\n01 - 250x400\n\n02 - 390x400\n\n03 - 500x600\n\n04 - 600x400\n\n05 - Full page\n" - }, - "alternateAuthenticationData": { - "type": "string", - "maxLength": 2048, - "description": "Data that documents and supports a specific authentication process.\n" - }, - "alternateAuthenticationDate": { - "type": "string", - "maxLength": 14, - "description": "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM\n" - }, - "alternateAuthenticationMethod": { - "type": "string", - "description": "Mechanism used by the cardholder to authenticate to the 3D Secure requestor.\nPossible values:\n- `01`: No authentication occurred\n- `02`: Login using merchant system credentials\n- `03`: Login using Federated ID\n- `04`: Login using issuer credentials\n- `05`: Login using third-party authenticator\n- `06`: Login using FIDO Authenticator\n" - }, - "authenticationDate": { - "type": "string", - "maxLength": 14, - "description": "The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request\npayload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be\nprovided by merchant in authorization request if calling an external 3DS provider.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\nFormat: YYYYMMDDHHMMSS\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" - }, - "challengeCancelCode": { - "type": "string", - "maxLength": 2, - "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" - }, - "challengeCode": { - "type": "string", - "description": "Possible values:\n- `01`: No preference\n- `02`: No challenge request\n- `03`: Challenge requested (3D Secure requestor preference)\n- `04`: Challenge requested (mandate)\n- `05`: No challenge requested (transactional risk analysis is already performed)\n- `06`: No challenge requested (Data share only)\n- `07`: No challenge requested (strong consumer authentication is already performed)\n- `08`: No challenge requested (utilize whitelist exemption if no challenge required)\n- `09`: Challenge requested (whitelist prompt requested if challenge required)\n**Note** This field will default to `01` on merchant configuration and can be overridden by the merchant.\nEMV 3D Secure version 2.1.0 supports values `01-04`. Version 2.2.0 supports values `01-09`.\n\nFor details, see `pa_challenge_code` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html)\n" - }, - "challengeStatus": { - "type": "string", - "maxLength": 2, - "description": "The `consumerAuthenticationInformation.challengeCode` indicates the authentication type/level, or challenge, that was presented to the cardholder\nat checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to\nthe issuer the alternative authentication methods that the consumer used.\n" - }, - "customerCardAlias": { - "type": "string", - "maxLength": 128, - "description": "An alias that uniquely identifies the customer's account and credit card on file.\nNote This field is required if Tokenization is enabled in the merchant profile settings.\n" - }, - "decoupledAuthenticationIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" - }, - "decoupledAuthenticationMaxTime": { - "type": "string", - "maxLength": 5, - "description": "Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes).\nPossible Values: Numeric values between 1 and 10080 accepted.\n" - }, - "defaultCard": { - "type": "boolean", - "description": "Indicates that the card being used is the one designated as the primary payment card for purchase.\nRecommended for Discover ProtectBuy.\n" - }, - "deviceChannel": { - "type": "string", - "maxLength": 10, - "description": "Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.\n" - }, - "installmentTotalCount": { - "type": "integer", - "maxLength": 4, - "description": "An integer value greater than 1 indicating the max number of permitted authorizations for installment payments.\n**Note** This is required if the merchant and cardholder have agreed to installment payments.\n" - }, - "merchantFraudRate": { - "type": "string", - "maxLength": 2, - "description": "Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes).\nPossible Values:\n1 = Represents fraud rate <=1\n\n2 = Represents fraud rate >1 and <=6\n\n3 = Represents fraud rate >6 and <=13\n\n4 = Represents fraud rate >13 and <=25\n\n5 = Represents fraud rate >25\n\nEEA** = European Economic Area\nRTS** = Regulatory Technical Standards\nPSD2** = Payment Services Directive\n" - }, - "marketingOptIn": { - "type": "boolean", - "description": "Indicates whether the customer has opted in for marketing offers.\nRecommended for Discover ProtectBuy.\n" - }, - "marketingSource": { - "type": "string", - "maxLength": 40, - "description": "Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.\n" - }, - "mcc": { - "type": "string", - "maxLength": 4, - "description": "Merchant category code.\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "merchantScore": { - "type": "integer", - "maxLength": 2, - "description": "Risk Score provided by merchants. This is specific for CB transactions.\n" - }, - "messageCategory": { - "type": "string", - "description": "Category of the message for a specific use case. Possible values:\n\n- `01`: PA- payment authentication\n- `02`: NPA- non-payment authentication\n- `03-79`: Reserved for EMVCo future use (values invalid until defined by EMVCo)\n- `80-99`: Reserved for DS use\n" - }, - "networkScore": { - "type": "string", - "maxLength": 2, - "description": "The global score calculated by the CB scoring platform and returned to merchants.\n\nPossible values: \n- '00' - '99'\n\nWhen you request the payer authentication and authorization services separately, get the value for this field from the pa_network_score reply field. \n\nThis field is supported only for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\n" - }, - "npaCode": { - "type": "string", - "maxLength": 2, - "description": "Non-Payer Authentication Indicator.\nPossible values:\n- `01`: Add card\n- `02`: Maintain card information\n- `03`: Cardholder verification for EMV token\n- `04-80` Reserved for EMVCo\n- `80-90` Reserved DS\n" - }, - "overridePaymentMethod": { - "type": "string", - "description": "Specifies the Brazilian payment account type used for the transaction.\nThis field overrides other payment types that might be specified in the request.\nUse one of the following values for this field:\n- `NA`: Not applicable. Do not override other payment types that are specified in the request.\n- `CR`: Credit card.\n- `DB`: Debit card.\n- `VSAVR`: Visa Vale Refeicao\n- `VSAVA`: Visa Vale Alimentacao\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "overrideCountryCode": { - "type": "string", - "maxLength": 2, - "description": "Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)..\n" - }, - "priorAuthenticationData": { - "type": "string", - "maxLength": 2048, - "description": "This field carry data that the ACS can use to verify the authentication process.\n" - }, - "priorAuthenticationMethod": { - "type": "string", - "maxLength": 2, - "description": "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n\n01 - Frictionless authentication occurred by ACS\n\n02 - Cardholder challenge occurred by ACS\n\n03 - AVS verified\n\n04 - Other issuer methods\n\n05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo)\n\n80-99 - Reserved for DS use\n" - }, - "priorAuthenticationReferenceId": { - "type": "string", - "maxLength": 36, - "description": "This data element contains a ACS Transaction ID for a prior authenticated transaction.\nFor example, the first recurring transaction that was authenticated with the cardholder\n" - }, - "priorAuthenticationTime": { - "type": "string", - "maxLength": 12, - "description": "Date and time in UTC of the prior cardholder authentication. Format \u2013 YYYYMMDDHHMM\n" - }, - "productCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the product code, which designates the type of transaction.\nSpecify one of the following values for this field:\n- AIR: Airline purchase\nImportant Required for American Express SafeKey (U.S.).\n- `ACC`: Accommodation Rental\n- `ACF`: Account funding\n- `CHA`: Check acceptance\n- `DIG`: Digital Goods\n- `DSP`: Cash Dispensing\n- `GAS`: Fuel\n- `GEN`: General Retail\n- `LUX`: Luxury Retail\n- `PAL`: Prepaid activation and load\n- `PHY`: Goods or services purchase\n- `QCT`: Quasi-cash transaction\n- `REN`: Car Rental\n- `RES`: Restaurant\n- `SVC`: Services\n- `TBD`: Other\n- `TRA`: Travel\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "returnUrl": { - "type": "string", - "maxLength": 2048, - "description": "The URL of the merchant\u2019s return page. CyberSource adds this return URL to the step-up JWT and returns it in the\nresponse of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL.\nOnce the bank session completes, the merchant receives a POST to their URL. This response contains the completed\nbank session\u2019s transactionId. The merchant\u2019s return page should capture the transaction ID and send it in the\nPayer Authentication validation call.\n" - }, - "requestorId": { - "type": "string", - "maxLength": 35, - "description": "Cardinal's directory server assigned 3DS Requestor ID value" - }, - "requestorInitiatedAuthenticationIndicator": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of 3RI request.\n\nPossible Values:\n\n01 - Recurring transaction\n\n02 - Installment transaction\n\n03 - Add card\n\n04 - Maintain card\n\n05 - Account verification\n\n06 - Split/delayed shipment\n\n07 - Top-up\n\n08 - Mail Order\n\n09 - Telephone Order\n\n10 - Whitelist status check\n\n11 - Other payment\n" - }, - "requestorName": { - "type": "string", - "maxLength": 40, - "description": "Cardinal's directory server assigned 3DS Requestor Name value" - }, - "referenceId": { - "type": "string", - "maxLength": 50, - "description": "Reference ID that corresponds to the device fingerprinting data that was collected previously.\nNote Required for Hybrid integration.\n" - }, - "sdkMaxTimeout": { - "type": "string", - "maxLength": 2, - "description": "This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes).\n\nPossible Values:\n\nGreater than or equal to 05 (05 is the minimum timeout to set)\n\nCardinal Default is set to 15\n\nNOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed\n" - }, - "secureCorporatePaymentIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies.\nPossible Values : 0/1\n" - }, - "transactionMode": { - "type": "string", - "description": "Transaction mode identifier. Identifies the channel from which the transaction originates.\nPossible values:\n\n- `M`: MOTO (Mail Order Telephone Order)\n- `R`: Retail\n- `S`: eCommerce\n- `P`: Mobile Device\n- `T`: Tablet\n" - }, - "whiteListStatus": { - "type": "string", - "maxLength": 1, - "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" - }, - "effectiveAuthenticationType": { - "type": "string", - "maxLength": 2, - "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" - }, - "signedParesStatusReason": { - "type": "string", - "maxLength": 2, - "description": "Provides additional information as to why the PAResStatus has a specific value.\n" - }, - "signedPares": { - "type": "string", - "description": "Payer authentication result (PARes) message returned by the card-issuing bank.\nIf you need to show proof of enrollment checking, you may need to\ndecrypt and parse the string for the information required by the payment card company.\nFor more information, see \"Storing Payer Authentication Data,\" page 160.\nImportant The value is in base64. You must remove all carriage returns and line feeds before\nadding the PARes to the request.\n" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - }, - "terminalSerialNumber": { - "type": "string", - "maxLength": 32, - "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "laneNumber": { - "type": "string", - "maxLength": 8, - "description": "Identifier for an alternate terminal at your retail location. You define the value for this field.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors.\nUse the `terminalId` field to identify the main terminal at your retail location. If your retail location has multiple terminals,\nuse this `laneNumber` field to identify the terminal used for the transaction.\n\nThis field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor.\n\nOptional field.\n\n#### Card present reply messaging\nIdentifier for an alternate terminal at your retail location. You defined the value for this field in the request\nmessage. This value must be printed on the receipt.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global.\n" - }, - "catLevel": { - "type": "integer", - "minimum": 1, - "maximum": 9, - "description": "Type of cardholder-activated terminal. Possible values:\n\n - 1: Automated dispensing machine\n - 2: Self-service terminal\n - 3: Limited amount terminal\n - 4: In-flight commerce (IFC) terminal\n - 5: Radio frequency device\n - 6: Mobile acceptance terminal\n - 7: Electronic cash register\n - 8: E-commerce device at your location\n - 9: Terminal or cash register that uses a dialup connection to connect to the transaction processing network\n\n#### Chase Paymentech Solutions\nOnly values 1, 2, and 3 are supported.\n\nRequired if `pointOfSaleInformation.terminalID` is included in the request; otherwise, optional.\n\n#### CyberSource through VisaNet\nValues 1 through 6 are supported on\nCyberSource through VisaNet, but some\nacquirers do not support all six values.\n\nOptional field.\n\n#### FDC Nashville Global\nOnly values 7, 8, and 9 are supported.\n\nOptional field for EMV transactions; otherwise, not used.\n\n#### GPN\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### JCN Gateway\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### TSYS Acquiring Solutions\nOnly value 6 is supported.\n\nRequired for transactions from mobile devices; otherwise, not used.\n\n#### All other processors\nNot used.\n\nNonnegative integer.\n" - }, - "entryMode": { - "type": "string", - "maxLength": 11, - "description": "Method of entering payment card information into the POS terminal. Possible values:\n\n - `contact`: Read from direct contact with chip card.\n - `contactless`: Read from a contactless interface using chip data.\n - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.\n - `swiped`: Read from credit card magnetic stripe.\n\nThe `contact`, `contactless`, and `msd` values are supported only for EMV transactions.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### Card Present\nCard present information about EMV applies only to credit card processing and PIN debit processing. All other\ncard present information applies only to credit card processing.\n\n#### PIN debit\nRequired for a PIN debit purchase and a PIN debit credit request.\n" - }, - "terminalCapability": { - "type": "integer", - "minimum": 1, - "maximum": 5, - "description": "POS terminal\u2019s capability. Possible values:\n\n - `1`: Terminal has a magnetic stripe reader only.\n - `2`: Terminal has a magnetic stripe reader and manual entry capability.\n - `3`: Terminal has manual entry capability only.\n - `4`: Terminal can read chip cards.\n - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards.\n\nFor an EMV transaction, the value of this field must be `4` or `5`.\n\n#### PIN debit\nRequired for PIN debit purchase and PIN debit credit request.\n\n#### Used by\n**Authorization**\nRequired for the following processors:\n- American Express Direct\n- Chase Paymentech Solutions\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- FDMS Nashville\n- OmniPay Direct\n- SIX\n- Worldpay VAP\n\nOptional for the following processors:\n- CyberSource through VisaNet\n- GPN\n- GPX\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n" - }, - "operatingEnvironment": { - "type": "string", - "maxLength": 1, - "description": "Operating environment.\n\nPossible values for all card types except Mastercard:\n- `0`: No terminal used or unknown environment.\n- `1`: On merchant premises, attended.\n- `2`: On merchant premises, unattended. Examples: oil, kiosks, self-checkout, mobile telephone, personal digital assistant (PDA).\n- `3`: Off merchant premises, attended. Examples: portable POS devices at trade shows, at service calls, or in taxis.\n- `4`: Off merchant premises, unattended. Examples: vending machines, home computer, mobile telephone, PDA.\n- `5`: On premises of cardholder, unattended.\n- `9`: Unknown delivery mode.\n- `S`: Electronic delivery of product. Examples: music, software, or eTickets that are downloaded over the internet.\n- `T`: Physical delivery of product. Examples: music or software that is delivered by mail or by a courier.\n\n#### Possible values for Mastercard:\n- `2`: On merchant premises, unattended, or cardholder terminal. Examples: oil, kiosks, self-checkout, home computer, mobile telephone, personal digital assistant (PDA). Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n- `4`: Off merchant premises, unattended, or cardholder terminal. Examples: vending machines, home computer, mobile telephone, PDA. Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThis field is supported only for American Express Direct and CyberSource through VisaNet.\n" - }, - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - }, - "cardholderVerificationMethodUsed": { - "type": "integer", - "description": "Method that was used to verify the cardholder's identity.\n\nPossible values:\n - `0`: No verification\n - `1`: Signature\n\nThis field is supported only on **American Express Direct**.\n" - }, - "cardSequenceNumber": { - "type": "string", - "maxLength": 3, - "description": "Number assigned to a specific card when two or more cards are associated with the same primary account number.\nThis value enables issuers to distinguish among multiple cards that are linked to the same account. This value\ncan also act as a tracking tool when reissuing cards. When this value is available, it is provided by the chip\nreader. When the chip reader does not provide this value, do not include this field in your request.\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is\navailable only on CyberSource through VisaNet and FDC Nashville Global.\n\n#### Used by\nAuthorization: Optional\nPIN Debit processing: Optional\n\n#### GPX\n\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "fallback": { - "type": "boolean", - "maxLength": 5, - "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" - }, - "fallbackCondition": { - "type": "integer", - "description": "Reason for the EMV fallback transaction. An EMV fallback transaction occurs when an EMV transaction fails for\none of these reasons:\n\n - Technical failure: the EMV terminal or EMV card cannot read and process chip data.\n - Empty candidate list failure: the EMV terminal does not have any applications in common with the EMV card.\n EMV terminals are coded to determine whether the terminal and EMV card have any applications in common.\n EMV terminals provide this information to you.\n\nPossible values:\n\n - `1`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal either used information from a successful chip read or it was not a chip transaction.\n - `2`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal was an EMV fallback transaction because the attempted chip read was unsuccessful.\n\nThis field is supported only on **GPN** and **JCN Gateway**.\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field\nwhen the EMV terminal does not have any applications in common with the EMV card.\n" - }, - "isRepeat": { - "type": "boolean", - "description": "#### Visa Platform Connect\nValue \u201ctrue\u201d indicates this transaction is intentionally duplicated . The field contains value \u201ctrue\u201d which\nindicates that merchant has intentionally duplicated single tap transaction. Merchant is intentionally sending\na duplicate auth request for a single tap txn because the issuer requested a PIN.\n" - } - } - }, - "amexCapnData": { - "type": "string", - "maxLength": 15, - "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "trackData": { - "type": "string", - "description": "Card\u2019s track 1 and 2 data. For all processors except FDMS Nashville, this value consists of\none of the following:\n\n - Track 1 data\n - Track 2 data\n - Data for both tracks 1 and 2\n\nFor FDMS Nashville, this value consists of one of the following:\n - Track 1 data\n - Data for both tracks 1 and 2\n\nExample: %B4111111111111111^SMITH/JOHN ^1612101976110000868000000?;4111111111111111=16121019761186800000?\n\n#### Used by\n**Authorization**\nRequired for Chase Paymentech Solutions, Credit Mutuel-CIC, CyberSource through VisaNet, FDC Nashville Global,\nJCN Gateway, OmniPay Direct, and SIX if `pointOfSaleInformation.entryMode` is equal to one of these values:\n- `contact`\n- `contactless`\n- `msd`\n- `swiped`\nOtherwise, this field not used.\n\nRequired for all other processors if `pointOfSaleInformation.entryMode=swiped`; otherwise, this field is not used.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### PIN debit\nTrack 2 data from the debit card. The sentinels are required.\nRequired field for a PIN debit purchase and a PIN debit credit.\n" - }, - "storeAndForwardIndicator": { - "type": "string", - "maxLength": 1, - "description": "When connectivity is unavailable, the client software that is installed on the POS terminal can store a\ntransaction in its memory and send it for authorization when connectivity is restored. This value is provided by\nthe client software that is installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\nPossible values:\n- `Y`: Transaction was stored and then forwarded.\n- `N` (default): Transaction was not stored and then forwarded.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "cardholderVerificationMethod": { - "type": "array", - "items": { - "type": "string", - "example": [ - "PIN", - "Signature", - "pinOnGlass" - ] - }, - "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\nOptional field.\nPossible values:\n- `PIN`: For terminals with a PIN Pad\n- `Signature`: For terminals capable of receiving a signature\n- `pinOnGlass`: For terminals where PIN is entered on a glass-based capture mechanism\n\n**EXAMPLE**: [\"PIN\",\"Signature\"]; [\"pinOnGlass\",\"Signature\"]\n" - }, - "terminalInputCapability": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Complete list of card input methods supported by the terminal.\n\nPossible values:\n- `Keyed`: Terminal can accept card data that is entered manually.\n- `Swiped`: Terminal can accept card data from a magnetic stripe reader.\n- `Contact`: Terminal can accept card data in EMV contact mode (\"dipping a card\").\n- `Contactless`: Terminal can accept card data in EMV contactless mode (\"tapping a card\").\n- `BarCode`: Terminal can read bar codes.\n- `QRcode`: Terminal can read or scan QR codes.\n- `OCR`: Terminal can perform optical character recognition (OCT) on the card.\n\n**EXAMPLE**: [\"Keyed\",\"Swiped\",\"Contact\",\"Contactless\"]\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "terminalCardCaptureCapability": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the terminal can capture the card.\n\nPossible values:\n- `1`: Terminal can capture card.\n- `0`: Terminal cannot capture card.\n\nFor authorizations and credits, this field is supported only by these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n\nOptional field.\n" - }, - "terminalOutputCapability": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the terminal can print or display messages.\n\nPossible values:\n- 1: Neither\n- 2: Print only\n- 3: Display only\n- 4: Print and display\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "terminalPinCapability": { - "type": "integer", - "description": "Maximum PIN length that the terminal can capture.\n\nPossible values:\n- 0: No PIN capture capability\n- 1: PIN capture capability unknown\n- 4: Four characters\n- 5: Five characters\n- 6: Six characters\n- 7: Seven characters\n- 8: Eight characters\n- 9: Nine characters\n- 10: Ten characters\n- 11: Eleven characters\n- 12: Twelve characters\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n- SIX\n\nRequired field for authorization or credit of PIN transactions.\n" - }, - "deviceId": { - "type": "string", - "maxLength": 32, - "description": "Value created by the client software that uniquely identifies the POS device. This value is provided by the\nclient software that is installed on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - }, - "pinBlockEncodingFormat": { - "type": "integer", - "maximum": 9, - "description": "Format that is used to encode the PIN block. This value is provided by the client software that is installed on\nthe POS terminal.\n\nPossible values:\n- `0`: ISO 9564 format 0\n- `1`: ISO 9564 format 1\n- `2`: ISO 9564 format 2\n- `3`: ISO 9564 format 3\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also supported by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n\n#### GPX\nFor chip and online PIN transactions for authorization, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Offline PIN\n- Chip and Signature\n\nFor PIN Debit Purchase and Credit Service transactions, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Online PIN\n" - }, - "encryptedPin": { - "type": "string", - "maxLength": 16, - "description": "Encrypted PIN.\n\nThis value is provided by the client software that is installed on the POS terminal.\n\n#### Used by\n**Authorization, PIN Debit**\nRequired when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\nRequired for PIN debit credit or PIN debit purchase.\nRequired for online PIN transactions.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" - }, - "encryptedKeySerialNumber": { - "type": "string", - "maxLength": 20, - "description": "Combination of the device's unique identifier and a transaction counter that is used in the process of\ndecrypting the encrypted PIN. The entity that injected the PIN encryption keys into the terminal decrypts the\nencrypted PIN and creates this value.\n\nFor all terminals that are using derived unique key per transaction (DUKPT) encryption, this is generated as a\nsingle number within the terminal.\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n- Required for online PIN transactions\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" - }, - "partnerSdkVersion": { - "type": "string", - "maxLength": 32, - "description": "Version of the software installed on the POS terminal. This value is provided by the client software that is\ninstalled on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "emvApplicationIdentifierAndDedicatedFileName": { - "type": "string", - "maxLength": 32, - "description": "This 32 byte length-maximum EBCDIC-K value is used to identify which chip application was performed between the terminal and the chip product.\nThe included values are the Application Identifier (AID) and the Dedicated File (DF) name. It is available to early- or full-option VSDC issuers.\nOnly single byte Katakana characters that can map to the EBCDIC-K table expected in the name.\n" - }, - "terminalCompliance": { - "type": "string", - "maxLength": 2, - "description": "Flag that indicates whether the terminal is compliant with standards mandated by the Reserve Bank of India for card-present domestic transactions in India.\n\nFormat:\n- First character indicates whether the terminal supports terminal line encryption (TLE). Possible values:\n - 1: Not certified\n - 2: Certified\n- Second character indicates whether the terminal supports Unique Key Per Transaction (UKPT) and Derived Unique Key Per Transaction (DUKPT). Possible values:\n - 1: Not certified\n - 2: Certified\n\n**Example** `21` indicates that the terminal supports TLE but does not support UKPT/DUKPT.\n\nYou and the terminal vendors are responsible for terminal certification. If you have questions, contact your acquirer.\n\nThis field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 92-93\n- Field: Mastercard Terminal Compliance Indicator\n\nThe 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n\n#### Used by\n**Authorization**\nRequired for card-present transactions in India. Otherwise, not used.\n" - }, - "isDedicatedHardwareTerminal": { - "type": "string", - "maxLength": 1, - "description": "Type of mPOS device. Possible values:\n- 0: Dongle\n- 1: Phone or tablet\n\nThis optional field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 141\n- Field: Mastercard mPOS Transaction\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s\nacquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n" - }, - "terminalModel": { - "type": "string", - "maxLength": 32, - "description": "This is the model name of the reader which is used to accept the payment.\nPossible values:\n - E3555\n - P400\n - A920\n" - }, - "terminalMake": { - "type": "string", - "maxLength": 32, - "description": "This is the manufacturer name of the reader which is used to accept the payment.\nPossible values:\n - PAX\n - Verifone\n - Ingenico\n" - }, - "serviceCode": { - "type": "string", - "maxLength": 3, - "description": "#### Visa Platform Connect\nMastercard service code that is included in the track data.\nYou can extract the service code from the track data and provide it in this API field.\nThis field is supported only for Mastercard on Visa Platform Connect.\n" - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "installmentInformation": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 12, - "description": "Amount for the current installment payment.\n\nThis field is supported only for CyberSource through VisaNet.\n\nFor details, see `installment_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "frequency": { - "type": "string", - "maxLength": 1, - "description": "Frequency of the installment payments. When you do not include this field in a request for a\nCrediario installment payment, CyberSource sends a space character to the processor.\n\nFor details, see `installment_frequency` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for CyberSource through VisaNet. Possible values:\n- `B`: Biweekly\n- `M`: Monthly\n- `W`: Weekly\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR9\n- Position: 41\n- Field: Installment Frequency\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "planType": { - "type": "string", - "maxLength": 1, - "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" - }, - "sequence": { - "type": "integer", - "maximum": 99, - "description": "Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nWhen you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor.\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 38-40\n- Field: Installment Payment Number\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 12, - "description": "Total amount of the loan that is being paid in installments. This field is supported only for CyberSource\nthrough VisaNet.\n\nFor details, see \"Installment Payments\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "totalCount": { - "type": "integer", - "maximum": 99, - "description": "Total number of installments when making payments in installments.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\n\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### American Express Direct, Cielo, and Comercio Latino\nThis value is the total number of installments you approved.\n\n#### CyberSource Latin American Processing in Brazil\nThis value is the total number of installments that you approved. The default is 1.\n\n#### All Other Processors\nThis value is used along with _sequence_ to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as _sequence_ = 2 and _totalCount_ = 5.\n\n#### CyberSource through VisaNet\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 23-25\n- Field: Number of Installments\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 7-8\n- Field: Number of Installments\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR1\n- Position: 7-8\n- Field: Number of Installments\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR5\n- Position: 20-22\n- Field: Installment Total Count\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" - }, - "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.\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" - }, - "invoiceData": { - "type": "string", - "maxLength": 20, - "description": "Invoice information that you want to provide to the issuer. This value is similar to a tracking number and is\nthe same for all installment payments for one purchase.\n\nThis field is supported only for installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 51-70\n- Field: Purchase Identification\n" - }, - "paymentType": { - "type": "string", - "maxLength": 1, - "description": "Payment plan for the installments.\n\nPossible values:\n- 0 (default): Regular installment. This value is not allowed for airline transactions.\n- 1: Installment payment with down payment.\n- 2: Installment payment without down payment. This value is supported only for airline transactions.\n- 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions.\n- 4: Down payment only; regular installment payment will follow.\n- 5: Boarding fee only. This value is supported only for airline transactions.\n\nThis field is supported only for installment payments with Visa on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 9\n- Field: Merchant Installment Supporting Information\n" - }, - "eligibilityInquiry": { - "type": "string", - "maxLength": 9, - "description": "Indicates whether the authorization request is a Crediario eligibility inquiry.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nSet the value for this field to `Crediario`.\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n" - }, - "gracePeriodDuration": { - "type": "string", - "maximum": 99, - "description": "Grace period requested by the customer before the first installment payment is due.\n\nWhen you include this field in a request, you must also include the grace period duration type field.\n\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR5, Position: 100-101, Field: Mastercard Grace Period Details.\n\nThis field is supported only for Mastercard installment payments in Brazil and Greece.\n" - }, - "gracePeriodDurationType": { - "type": "string", - "maxLength": 1, - "description": "Unit for the requested grace period duration.\n\nPossible values:\n- `D`: Days\n- `W`: Weeks\n- `M`: Months\n\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR5, Position: 99, Field: Mastercard Grace Period Details\n\nThis field is supported only for Mastercard installment payments in Brazil and Greece on CyberSource through VisaNet.\n" - }, - "firstInstallmentAmount": { - "type": "string", - "maxLength": 13, - "description": "Amount of the first installment payment. The issuer provides this value when the first installment payment is successful.\nThis field is supported for Mastercard installment payments on CyberSource through VisaNet in all countries except Brazil,Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 23-34\n- Field: Amount of Each Installment\n" - }, - "validationIndicator": { - "type": "string", - "maximum": 1, - "description": "Standing Instruction/Installment validation indicator.\n- '1': Prevalidated\n- '2': Not Validated\n" - }, - "identifier": { - "type": "string", - "maximum": 60, - "description": "Standing Instruction/Installment identifier.\n" - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "maxLength": 2, - "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" - }, - "agency": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 8, - "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" - }, - "name": { - "type": "string", - "maxLength": 25, - "description": "Name of travel agency that made the reservation.\n" - } - } - }, - "autoRental": { - "type": "object", - "properties": { - "noShowIndicator": { - "type": "boolean", - "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" - }, - "customerName": { - "type": "string", - "maxLength": 40, - "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" - }, - "vehicleClass": { - "type": "string", - "maxLength": 4, - "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" - }, - "distanceTravelled": { - "type": "string", - "maxLength": 5, - "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" - }, - "distanceUnit": { - "type": "string", - "maxLength": 1, - "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" - }, - "returnDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "rentalDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "maxFreeDistance": { - "type": "string", - "maxLength": 4, - "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" - }, - "insuranceIndicator": { - "type": "boolean", - "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" - }, - "programCode": { - "type": "string", - "maxLength": 2, - "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" - }, - "returnAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City where the auto was returned to the rental agency.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" - } - } - }, - "rentalAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" - }, - "address1": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "address2": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" - } - } - }, - "agreementNumber": { - "type": "string", - "maxLength": 25, - "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" - }, - "odometerReading": { - "type": "string", - "maxLength": 8, - "description": "Odometer reading at time of vehicle rental.\n" - }, - "vehicleIdentificationNumber": { - "type": "string", - "maxLength": 20, - "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" - }, - "companyId": { - "type": "string", - "maxLength": 12, - "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" - }, - "numberOfAdditionalDrivers": { - "type": "string", - "maxLength": 1, - "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" - }, - "driverAge": { - "type": "string", - "maxLength": 3, - "description": "Age of the driver renting the vehicle.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 2, - "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" - }, - "vehicleMake": { - "type": "string", - "maxLength": 10, - "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" - }, - "vehicleModel": { - "type": "string", - "maxLength": 10, - "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" - }, - "timePeriod": { - "type": "string", - "maxLength": 7, - "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" - }, - "taxDetails": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" - }, - "taxType": { - "type": "string", - "maxLength": 10, - "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" - }, - "taxSummary": { - "type": "string", - "maxLength": 12, - "description": "Summary of all tax types\n" - } - } - }, - "insuranceAmount": { - "type": "string", - "maxLength": 12, - "description": "Insurance charges.\nField is conditional and can include decimal point.\n" - }, - "oneWayDropOffAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" - }, - "adjustedAmountIndicator": { - "type": "string", - "maxLength": 1, - "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" - }, - "adjustedAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" - }, - "fuelCharges": { - "type": "string", - "maxLength": 12, - "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "weeklyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" - }, - "dailyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" - }, - "ratePerMile": { - "type": "string", - "maxLength": 12, - "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" - }, - "mileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" - }, - "extraMileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "lateFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" - }, - "towingCharge": { - "type": "string", - "maxLength": 4, - "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" - }, - "extraCharge": { - "type": "string", - "maxLength": 12, - "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" - }, - "gpsCharge": { - "type": "string", - "maxLength": 12, - "description": "Amount charged for renting a Global Positioning Service (GPS).\n" - }, - "phoneCharge": { - "type": "string", - "maxLength": 12, - "description": "Additional charges incurred for phone usage included on the total bill.\n" - }, - "parkingViolationCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" - }, - "otherCharges": { - "type": "string", - "maxLength": 12, - "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" - } - } - }, - "lodging": { - "type": "object", - "properties": { - "checkInDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "checkOutDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "room": { - "type": "array", - "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", - "items": { - "type": "object", - "properties": { - "dailyRate": { - "type": "string", - "maxLength": 8, - "description": "Daily cost of the room.\n" - }, - "numberOfNights": { - "type": "integer", - "minimum": 1, - "maximum": 9999, - "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" - } - } - } - }, - "smokingPreference": { - "type": "string", - "maxLength": 1, - "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" - }, - "numberOfRooms": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of rooms booked by the cardholder.\n" - }, - "numberOfGuests": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of guests staying in the room.\n" - }, - "roomBedType": { - "type": "string", - "maxLength": 12, - "description": "Type of room, such as queen, king, or two doubles.\n" - }, - "roomTaxType": { - "type": "string", - "maxLength": 10, - "description": "Type of tax, such as tourist or hotel.\n" - }, - "roomRateType": { - "type": "string", - "maxLength": 12, - "description": "Type of rate, such as corporate or senior citizen.\n" - }, - "guestName": { - "type": "string", - "maxLength": 40, - "description": "Name of the guest under which the room is reserved.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Your toll-free customer service phone number.\n" - }, - "corporateClientCode": { - "type": "string", - "maxLength": 17, - "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" - }, - "additionalDiscountAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of an additional coupon or discount.\n" - }, - "roomLocation": { - "type": "string", - "maxLength": 10, - "description": "Location of room, such as lake view or ocean view.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 1, - "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" - }, - "totalTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount.\n" - }, - "prepaidCost": { - "type": "string", - "maxLength": 12, - "description": "Prepaid amount, such as a deposit.\n" - }, - "foodAndBeverageCost": { - "type": "string", - "maxLength": 12, - "description": "Cost for all food and beverages.\n" - }, - "roomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax for the room.\n" - }, - "adjustmentAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" - }, - "phoneCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of telephone services.\n" - }, - "restaurantCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of restaurant purchases\n" - }, - "roomServiceCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of room service.\n" - }, - "miniBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of mini-bar purchases.\n" - }, - "laundryCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of laundry services.\n" - }, - "miscellaneousCost": { - "type": "string", - "maxLength": 12, - "description": "Miscellaneous costs.\n" - }, - "giftShopCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of gift shop purchases.\n" - }, - "movieCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of movies.\n" - }, - "healthClubCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of health club services.\n" - }, - "valetParkingCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of valet parking services.\n" - }, - "cashDisbursementCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of the cash that was disbursed plus any associated service fees\n" - }, - "nonRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of non-room purchases, such as meals and gifts.\n" - }, - "businessCenterCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of business center services.\n" - }, - "loungeBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of lounge and bar purchases.\n" - }, - "transportationCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of transportation services.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 12, - "description": "Gratuity.\n" - }, - "conferenceRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of conference room services.\n" - }, - "audioVisualCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of audio visual services.\n" - }, - "banquestCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of banquet services.\n" - }, - "nonRoomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax on non-room purchases.\n" - }, - "earlyCheckOutCost": { - "type": "string", - "maxLength": 12, - "description": "Service fee for early departure.\n" - }, - "internetAccessCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of Internet access.\n" - } - } - }, - "transit": { - "type": "object", - "properties": { - "airline": { - "type": "object", - "properties": { - "bookingReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" - }, - "carrierName": { - "type": "string", - "maxLength": 15, - "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "ticketIssuer": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 4, - "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" - }, - "name": { - "type": "string", - "maxLength": 20, - "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" - }, - "address": { - "type": "string", - "maxLength": 16, - "description": "Address of the company issuing the ticket.\n" - }, - "locality": { - "type": "string", - "maxLength": 18, - "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 18, - "description": "State in which transaction occured.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Zip code of the city in which transaction occured.\n" - }, - "country": { - "type": "string", - "maxLength": 18, - "description": "Country in which transaction occured.\n" - } - } - }, - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "checkDigit": { - "type": "string", - "maxLength": 1, - "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" - }, - "restrictedTicketIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "transactionType": { - "type": "integer", - "maxLength": 2, - "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" - }, - "extendedPaymentCode": { - "type": "string", - "maxLength": 3, - "description": "The field is not currently supported.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 42, - "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" - }, - "customerCode": { - "type": "string", - "maxLength": 40, - "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "documentType": { - "type": "string", - "maxLength": 1, - "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" - }, - "documentNumber": { - "type": "string", - "maxLength": 14, - "description": "The field is not currently supported.\n" - }, - "documentNumberOfParts": { - "type": "integer", - "maxLength": 4, - "description": "The field is not currently supported.\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 25, - "description": "Invoice number for the airline transaction.\n" - }, - "invoiceDate": { - "type": "integer", - "maxLength": 8, - "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" - }, - "additionalCharges": { - "type": "string", - "maxLength": 20, - "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" - }, - "totalFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingSequence": { - "type": "string", - "maxLength": 2, - "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" - }, - "totalClearingAmount": { - "type": "string", - "maxLength": 20, - "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationSystemCode": { - "type": "string", - "maxLength": 4, - "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "processIdentifier": { - "type": "string", - "maxLength": 3, - "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" - }, - "ticketIssueDate": { - "type": "string", - "maxLength": 8, - "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" - }, - "electronicTicketIndicator": { - "type": "boolean", - "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" - }, - "originalTicketNumber": { - "type": "string", - "maxLength": 14, - "description": "Original ticket number when the transaction is for a replacement ticket.\n" - }, - "purchaseType": { - "type": "string", - "maxLength": 3, - "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 1, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" - }, - "ticketChangeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" - }, - "planNumber": { - "type": "string", - "maxLength": 1, - "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" - }, - "arrivalDate": { - "type": "string", - "maxLength": 8, - "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" - }, - "restrictedTicketDesciption": { - "type": "string", - "maxLength": 20, - "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" - }, - "exchangeTicketAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" - }, - "exchangeTicketFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationType": { - "type": "string", - "maxLength": 32, - "description": "The field is not currently supported.\n" - }, - "boardingFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Boarding fee.\n" - }, - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "carrierCode": { - "type": "string", - "maxLength": 4, - "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "flightNumber": { - "type": "string", - "maxLength": 6, - "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "originatingAirportCode": { - "type": "string", - "maxLength": 5, - "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "class": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "stopoverIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureDate": { - "type": "integer", - "maxLength": 8, - "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "destinationAirportCode": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "fareBasis": { - "type": "string", - "maxLength": 15, - "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" - }, - "departTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of departure tax for this leg of the trip.\n" - }, - "conjunctionTicket": { - "type": "string", - "maxLength": 25, - "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "exchangeTicketNumber": { - "type": "string", - "maxLength": 25, - "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "couponNumber": { - "type": "string", - "maxLength": 1, - "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "departureTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "arrivalTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "arrivalTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "endorsementsRestrictions": { - "type": "string", - "maxLength": 20, - "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "totalFareAmount": { - "type": "string", - "maxLength": 15, - "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "feeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - } - } - } - }, - "ancillaryInformation": { - "type": "object", - "properties": { - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 20, - "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" - }, - "connectedTicketNumber": { - "type": "string", - "maxLength": 15, - "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 15, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "service": { - "type": "array", - "items": { - "type": "object", - "properties": { - "categoryCode": { - "type": "string", - "maxLength": 4, - "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "subCategoryCode": { - "type": "string", - "maxLength": 4, - "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" - } - } - } - } - } - } - } - } - } - } - } - }, - "healthCareInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "array", - "description": "array for Healthcare fields", - "items": { - "type": "object", - "properties": { - "amountType": { - "type": "string", - "maxLength": 35, - "description": "Total amount that has been spent on healthcare in a transaction.\nValid Values for **Visa**:\n- `healthcare` - Total Amount Healthcare\n- `healthcare-transit` - Amount Transit\n- `vision` - Amount Vision/Optical\n- `prescription` - Amount Prescription/RX\n- `clinic` - Amount Clinic/Other Qualified Medical\n- `dental` - Amount Dental\n\n\n`Note:` - Prescription, Clinic and dental amounts must be preceded with the total healthcare amount and cannot occur individually. Vision and Transit must be sent individually and cannot be combined with total healthcare amount or any other amounts. Total Healthcare amount can be sent individually.\n\nValid Values for **MasterCard**:\n- `prescription` - Amount Prescription/RX\n- `eligible-total` - Total Amount Healthcare\n\n\n`Note:` - Prescription must be preceded with the total healthcare amount and cannot occur individually. Total Healthcare amount can be sent individually.\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total Amount that has been spent on the corresponding amountType. This is 13 byte field including sign.\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n" - } - } - } - } - } - }, - "promotionInformation": { - "type": "object", - "properties": { - "additionalCode": { - "type": "string", - "maxLength": 12, - "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" - }, - "code": { - "type": "string", - "maxLength": 12, - "description": "Code for a promotion or discount.\n" - } - } - }, - "tokenInformation": { - "type": "object", - "properties": { - "jti": { - "type": "string", - "maxLength": 64, - "description": "TMS Transient Token, 64 hexadecimal id value representing captured payment credentials (including Sensitive Authentication Data, e.g. CVV).\n" - }, - "transientTokenJwt": { - "type": "string", - "description": "Flex API Transient Token encoded as JWT (JSON Web Token), e.g. Flex microform or Unified Payment checkout result.\n" - }, - "paymentInstrument": { - "type": "object", - "properties": { - "default": { - "type": "boolean", - "description": "Flag that specifies if the Payment Instrument should be made the Customers default.\nPossible values:\n- true\n- false : (default)\n", - "default": false - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "default": { - "type": "boolean", - "description": "Flag that specifies if the Shipping Address should be made the Customers default.\nPossible values:\n- true\n- false : (default)\n", - "default": false - } - } - }, - "networkTokenOption": { - "type": "string", - "description": "Indicates whether a payment network token associated with a TMS token should be used for authorization. This field can contain one of following values:\n\n- `ignore`: Use a tokenized card number for an authorization, even if the TMS token has an associated payment network token.\n- `prefer`: (Default) Use an associated payment network token for an authorization if the TMS token has one; otherwise, use the tokenized card number.\n" - } - } - }, - "invoiceDetails": { - "type": "object", - "description": "invoice Details", - "properties": { - "barcodeNumber": { - "type": "string", - "maxLength": 100, - "description": "Barcode ID scanned from the Payment Application." - } - } - }, - "processorInformation": { - "type": "object", - "description": "Processor Information", - "properties": { - "preApprovalToken": { - "type": "string", - "maxLength": 60, - "description": "Token received in original session service." - }, - "authorizationOptions": { - "type": "object", - "properties": { - "panReturnIndicator": { - "type": "string", - "maxLength": 1, - "description": "#### Visa Platform Connect\nThe field contains the PAN translation indicator for American Express Contactless Transaction. Valid value is\u00a0\n\n1- Expresspay Translation, PAN request\n2- Expresspay Translation, PAN and Expiry date request\n" - } - } - } - } - }, - "riskInformation": { - "type": "object", - "description": "This object is only needed when you are requesting both payment and DM services at same time.", - "properties": { - "profile": { - "type": "object", - "description": "Identifies a risk profile.", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" - } - } - }, - "eventType": { - "type": "string", - "maxLength": 255, - "description": "Specifies one of the following types of events:\n- login\n- account_creation\n- account_update\nFor regular payment transactions, do not send this field.\n" - }, - "buyerHistory": { - "type": "object", - "properties": { - "customerAccount": { - "type": "object", - "properties": { - "lastChangeDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder\u2019s account was last changed.\nThis includes changes to the billing or shipping address, new payment accounts or new users added.\nRecommended for Discover ProtectBuy.\n" - }, - "creationHistory": { - "type": "string", - "description": "The values from the enum can be:\n- GUEST\n- NEW_ACCOUNT\n- EXISTING_ACCOUNT\n" - }, - "modificationHistory": { - "type": "string", - "description": "This field is applicable only in case of EXISTING_ACCOUNT in creationHistory. Possible values:\n- ACCOUNT_UPDATED_NOW\n- ACCOUNT_UPDATED_PAST\n" - }, - "passwordHistory": { - "type": "string", - "description": "This only applies for EXISTING_ACCOUNT in creationHistory.\nThe values from the enum can be:\n- PASSWORD_CHANGED_NOW\n- PASSWORD_CHANGED_PAST\n- PASSWORD_NEVER_CHANGED\n" - }, - "createDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder opened the account.\nRecommended for Discover ProtectBuy.\nThis only applies for EXISTING_ACCOUNT in creationHistory.\n" - }, - "passwordChangeDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder last changed or reset password on account.\nRecommended for Discover ProtectBuy.\nThis only applies for PASSWORD_CHANGED_PAST in passwordHistory.\n" - } - } - }, - "accountHistory": { - "type": "object", - "properties": { - "firstUseOfShippingAddress": { - "type": "boolean", - "description": "Applicable when this is not a guest account.\n" - }, - "shippingAddressUsageDate": { - "type": "string", - "maxLength": 10, - "description": "Date when the shipping address for this transaction was first used.\nRecommended for Discover ProtectBuy.\nIf `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.\n" - } - } - }, - "accountPurchases": { - "type": "integer", - "maxLength": 4, - "description": "Number of purchases with this cardholder account during the previous six months.\nRecommended for Discover ProtectBuy.\n" - }, - "addCardAttempts": { - "type": "integer", - "maxLength": 3, - "description": "Number of add card attempts in the last 24 hours.\nRecommended for Discover ProtectBuy.\n" - }, - "priorSuspiciousActivity": { - "type": "boolean", - "description": "Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.\nRecommended for Discover ProtectBuy.\n" - }, - "paymentAccountHistory": { - "type": "string", - "description": "This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are:\n- PAYMENT_ACCOUNT_EXISTS\n- PAYMENT_ACCOUNT_ADDED_NOW\n" - }, - "paymentAccountDate": { - "type": "integer", - "maxLength": 8, - "description": "Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory\n" - }, - "transactionCountDay": { - "type": "integer", - "maxLength": 3, - "description": "Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours.\nRecommended for Discover ProtectBuy.\n" - }, - "transactionCountYear": { - "type": "integer", - "maxLength": 3, - "description": "Number of transaction (successful or abandoned) for this cardholder account within the last year.\nRecommended for Discover ProtectBuy.\n" - } - } - }, - "auxiliaryData": { - "type": "array", - "items": { - "type": "object", - "description": "Contains auxiliary key-value pairs.", - "properties": { - "key": { - "type": "string", - "maxLength": 255, - "description": "Fields that you can use to send additional data to Risk services.\n**Warning** Auxiliary fields are not intended to and MUST NOT\nbe used to capture personally identifying information.\nAccordingly, merchants are prohibited from capturing,\nobtaining, and/or transmitting any personally identifying\ninformation in or via the auxiliary data fields. Personally\nidentifying information includes, but is not limited to,\naddress, credit card number, social security number,\ndriver's license number, state-issued identification\nnumber, passport number, and card verification numbers\n(CVV, CVC2, CVV2, CID, CVN). In the event CyberSource\ndiscovers that a merchant is capturing and/or transmitting\npersonally identifying information via the auxiliary data\nfields, whether or not intentionally, CyberSource WILL\nimmediately suspend the merchant's account, which will\nresult in a rejection of any and all transaction requests\nsubmitted by the merchant after the point of suspension.\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "String value for the key" - } - } - } - } - } - }, - "acquirerInformation": { - "type": "object", - "properties": { - "acquirerBin": { - "type": "string", - "maxLength": 11, - "description": "Acquirer bank ID number that corresponds to a certificate that Cybersource already has.This ID has this format. 4XXXXX for Visa and 5XXXXX for Mastercard.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Issuers need to be aware of the Acquirer's Country Code when the Acquirer country differs from the Merchant country and the Acquirer is in the EEA (European Economic Area).\n" - }, - "password": { - "type": "string", - "maxLength": 8, - "description": "Registered password for the Visa directory server.\n" - }, - "merchantId": { - "type": "string", - "maxLength": 15, - "description": "Username for the visa directory server that is created when your acquirer sets up your account. This ID might be the same as your merchant ID. the username can be 15 or 23 characters.\n" - } - } - }, - "recurringPaymentInformation": { - "type": "object", - "description": "This object contains recurring payment information.", - "properties": { - "endDate": { - "type": "string", - "maxLength": 10, - "description": "The date after which no further recurring authorizations should be performed. Format: `YYYY-MM-DD`\n**Note** This field is required for recurring transactions.\n" - }, - "frequency": { - "type": "integer", - "maxLength": 4, - "description": "Integer value indicating the minimum number of days between recurring authorizations. A frequency\nof monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months.\n\nExample: 6 months = 168\n\nExample values accepted (31 days):\n- 31\n- 031\n- 0031\n\n**Note** This field is required for recurring transactions.\n" - }, - "numberOfPayments": { - "type": "integer", - "maxLength": 3, - "description": "Total number of payments for the duration of the recurring subscription.\n" - }, - "originalPurchaseDate": { - "type": "string", - "maxLength": 17, - "description": "Date of original purchase. Required for recurring transactions.\nFormat: `YYYY-MM-DDTHH:MM:SSZ`\n**Note**: If this field is empty, the current date is used.\n" - }, - "sequenceNumber": { - "type": "integer", - "maxLength": 3, - "description": "This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC. \nThis field records recurring sequence, e.g. 1st for initial, 2 for subsequent, 3 etc\n" - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "VDP", - "address1": "201 S. Division St.", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "firstName": "RTS", - "phoneNumber": "999999999", - "district": "MI", - "buildingNumber": "123", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "5555555555554444", - "securityCode": "123", - "expirationMonth": "12", - "type": "002" - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2PaymentsPost201Response", - "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." - } - } - }, - "reversal": { - "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." - } - } - }, - "capture": { - "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." - } - } - }, - "customer": { - "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." - } - } - }, - "paymentInstrument": { - "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." - } - } - }, - "shippingAddress": { - "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." - } - } - }, - "instrumentIdentifier": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - AUTHORIZED\n - PARTIAL_AUTHORIZED\n - AUTHORIZED_PENDING_REVIEW\n - AUTHORIZED_RISK_DECLINED\n - PENDING_AUTHENTICATION\n - PENDING_REVIEW\n - DECLINED\n - INVALID_REQUEST\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - AVS_FAILED\n - CONTACT_PROCESSOR\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - INSUFFICIENT_FUND\n - STOLEN_LOST_CARD\n - ISSUER_UNAVAILABLE\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - EXCEEDS_CREDIT_LIMIT\n - INVALID_CVN\n - DECLINED_CHECK\n - BLACKLISTED_CUSTOMER\n - SUSPENDED_ACCOUNT\n - PAYMENT_REFUSED\n - CV_FAILED\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - INVALID_MERCHANT_CONFIGURATION\n - DECISION_PROFILE_REJECT\n - SCORE_EXCEEDS_THRESHOLD\n - PENDING_AUTHENTICATION\n - ACH_VERIFICATION_FAILED\n - DECISION_PROFILE_REVIEW\n - CONSUMER_AUTHENTICATION_REQUIRED\n - CONSUMER_AUTHENTICATION_FAILED\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\n" - }, - "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" - } - } - } - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "bankTransferOptions": { - "type": "object", - "properties": { - "settlementMethod": { - "type": "string", - "maxLength": 1, - "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "fraudScreeningLevel": { - "type": "string", - "maxLength": 1, - "description": "Level of fraud screening.\n\nPossible values:\n- `1`: Validation \u2014 default if the field has not already been configured for your merchant ID\n- `2`: Verification\n\nFor a description of this feature and a list of supported processors, see \"Verification and Validation\" in the [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - } - } - }, - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "enhancedDataEnabled": { - "type": "boolean", - "description": "The possible values for the reply field are:\n- `true` : the airline data was included in the request to the processor.\n- `false` : the airline data was not included in the request to the processor.\n\nReturned by authorization, capture, or credit services.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "authIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag that specifies the purpose of the authorization.\n\nPossible values:\n - `0`: Preauthorization\n - `1`: Final authorization\n" - }, - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - }, - "cardReferenceData": { - "type": "string", - "maxLength": 56, - "description": "The Scheme reference data is a variable length data element up to a maximum of 56 characters. It may be sent by the acquirer in the\nauthorisation response message, and by the terminal (unchanged) in subsequent authorisation request messages associated with the same\ntransaction.\nThis field is used by Streamline and HSBC UK only, at present.\n" - }, - "transactionId": { - "type": "string", - "maxLength": 50, - "description": "Network transaction identifier (TID). You can use this value to identify a specific transaction when you are\ndiscussing the transaction with your processor. Not all processors provide this value.\n\nReturned by the authorization service.\n\n#### PIN debit\nTransaction identifier generated by the processor.\n\nReturned by PIN debit credit.\n\n#### GPX\nProcessor transaction ID.\n\n#### Cielo\nFor Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.\n\n#### Comercio Latino\nFor Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.\n\n#### CyberSource through VisaNet and GPN\nFor details about this value for CyberSource through VisaNet and GPN, see \"Network Transaction Identifiers\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Moneris\nThis value identifies the transaction on a host system. It contains the following information:\n- Terminal used to process the transaction\n- Shift during which the transaction took place\n- Batch number\n- Transaction number within the batch\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\n**Example** For the value\n66012345001069003:\n- Terminal ID = 66012345\n- Shift number = 001\n- Batch number = 069\n- Transaction number = 003\n" - }, - "networkTransactionId": { - "type": "string", - "description": "Same value as `processorInformation.transactionId`" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "responseCodeSource": { - "type": "string", - "maxLength": 1, - "description": "Used by Visa only and contains the response source/reason code that identifies the source of the response decision.\n" - }, - "responseDetails": { - "type": "string", - "maxLength": 255, - "description": "This field might contain information about a decline. This field is supported only for **CyberSource through\nVisaNet**.\n" - }, - "responseCategoryCode": { - "type": "string", - "maxLength": 36, - "description": "Processor-defined response category code. The associated detail error code is in the `processorInformation.responseCode` or `issuerInformation.responseCode`\nfield of the service you requested.\n\nThis field is supported only for:\n\n - Japanese issuers\n - Domestic transactions in Japan\n - Comercio Latino\u2014processor transaction ID required for troubleshooting\n\n#### Maximum length for processors\n\n - Comercio Latino: 36\n - All other processors: 3\n" - }, - "forwardedAcquirerCode": { - "type": "string", - "maxLength": 32, - "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" - }, - "avs": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 1, - "description": "AVS result code.\n\nReturned by authorization service.\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 10, - "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\n**Important** Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\n\nReturned by authorization service.\n" - } - } - }, - "cardVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 1, - "description": "CVN result code.\n\nFor details, see the `auth_cv_result` reply field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "resultCodeRaw": { - "type": "string", - "maxLength": 10, - "description": "CVN result code sent directly from the processor. Returned only when the processor returns this value.\n\n**Important** Do not use this field to evaluate the result of card verification. Use for debugging purposes only.\n" - } - } - }, - "merchantAdvice": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 2, - "description": "Reason the recurring payment transaction was declined. For some processors, this field is used only for\nMastercard. For other processors, this field is used for Visa and Mastercard. And for other processors, this\nfield is not implemented.\n\nPossible values:\n\n - `00`: Response not provided.\n - `01`: New account information is available. Obtain the new information.\n - `02`: Try again later.\n - `03`: Do not try again. Obtain another type of payment from the customer.\n - `04`: Problem with a token or a partial shipment indicator.\n - `21`: Recurring payment cancellation service.\n - `99`: An unknown value was returned from the processor.\n\nFor processor-specific information, see the `auth_merchant_advice_code` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 4, - "description": "Raw merchant advice code sent directly from the processor. This field is used only for Mastercard.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR7\n- Position: 96-99\n- Field: Response Data-Merchant Advice Code\n\n\nFor processor-specific information, see the `auth_merchant_advice_code_raw` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "nameMatch": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThe field contains will contain the Account Name Request Result for zero amount Authorization request. Valid values are:\n\n00 = Name Match Performed\n01 = Name Match not Performed\n02 = Name Match not supported\n" - } - } - }, - "electronicVerificationResults": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s name.\n\nFor details, see `auth_ev_name` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s last name" - }, - "email": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s email address.\n\nFor details, see `auth_ev_email` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "emailRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s email address." - }, - "phoneNumber": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s phone number.\n\nFor details, see `auth_ev_phone_number` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "phoneNumberRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s phone number." - }, - "postalCode": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s postal code.\n\nFor details, see `auth_ev_postal_code` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "postalCodeRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s postal code." - }, - "street": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s street address.\n\nFor details, see `auth_ev_street` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "streetRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s street address." - }, - "name": { - "type": "string", - "maxLength": 30, - "description": "Mapped Electronic Verification response code for the customer\u2019s name.\n" - }, - "nameRaw": { - "type": "string", - "maxLength": 30, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s name.\n" - } - } - }, - "achVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 2, - "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - }, - "resultCodeRaw": { - "type": "string", - "maxLength": 10, - "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "personalIdResult": { - "type": "string", - "maxLength": 1, - "description": "Personal identifier result. This field is supported only for Redecard in Brazil for CyberSource Latin\nAmerican Processing. If you included `buyerInformation.personalIdentification[].ID` in the request, this\nvalue indicates whether or not `buyerInformation.personalIdentification[].ID` matched a value in a record\non file. Returned only when the personal ID result is returned by the processor.\n\nPossible values:\n\n - `Y`: Match\n - `N`: No match\n - `K`: Not supported\n - `U`: Unknown\n - `Z`: No response returned\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America.The information in this field description is for the specific processing\nconnection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n" - } - } - }, - "consumerAuthenticationResponse": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Mapped response code for Visa Secure and American Express SafeKey.\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 3, - "description": "Raw response code sent directly from the processor for Visa Secure and American Express SafeKey:\n" - } - } - }, - "systemTraceAuditNumber": { - "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" - }, - "paymentAccountReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Visa-generated reference number that identifies a card-present transaction for which you provided one of the\nfollowing:\n\n - Visa primary account number (PAN)\n - Visa-generated token for a PAN\n\nThis reference number serves as a link to the cardholder account and to all transactions for that account.\nThis reply field is returned only for CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR8\n- Position: 79-110\n- Field: Payment Account Reference\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s acquirer,\nwho uses this information to facilitate end-of-day clearing processing with payment networks.\n" - }, - "transactionIntegrityCode": { - "type": "string", - "maxLength": 2, - "description": "Transaction integrity classification provided by Mastercard. This value specifies Mastercard\u2019s evaluation of\nthe transaction\u2019s safety and security. This field is returned only for **CyberSource through VisaNet**.\n\nFor card-present transactions, possible values:\n\n - `A1`: EMV or token in a secure, trusted environment\n - `B1`: EMV or chip equivalent\n - `C1`: Magnetic stripe\n - `E1`: Key entered\n - `U0`: Unclassified\n\nFor card-not-present transactions, possible values:\n\n - `A2`: Digital transactions\n - `B2`: Authenticated checkout\n - `C2`: Transaction validation\n - `D2`: Enhanced data\n - `E2`: Generic messaging\n - `U0`: Unclassified\n\nFor information about these values, contact Mastercard or your acquirer.\n\n#### CyberSource through VisaNet\n\nThe value for this field corresponds to the following data in the TC 33 capture file,1:\n- Record: CP01 TCR6\n- Position: 136-137\n- Field: Mastercard Transaction Integrity Classification\n\n1 The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s acquirer, who uses\nthis information to facilitate end-of-day clearing processing with payment networks.\n" - }, - "amexVerbalAuthReferenceNumber": { - "type": "string", - "maxLength": 6, - "description": "Referral response number for a verbal authorization with FDMS Nashville when using an American Express card.\nGive this number to American Express when you call them for the verbal authorization.\n" - }, - "masterCardServiceCode": { - "type": "string", - "maxLength": 2, - "description": "Mastercard service that was used for the transaction. Mastercard provides this value to CyberSource.\n\nPossible value:\n - 53: Mastercard card-on-file token service\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 133-134\n- Field: Mastercard Merchant on-behalf service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" - }, - "masterCardServiceReplyCode": { - "type": "string", - "maxLength": 1, - "description": "Result of the Mastercard card-on-file token service. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `C`: Service completed successfully.\n - `F`: One of the following:\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 81 for an authorization or\n authorization reversal.\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 01 for a tokenized request.\n - Token requestor ID is missing or formatted incorrectly.\n - `I`: One of the following:\n - Invalid token requestor ID.\n - Suspended or deactivated token.\n - Invalid token (not in mapping table).\n - `T`: Invalid combination of token requestor ID and token.\n - `U`: Expired token.\n - `W`: Primary account number (PAN) listed in electronic warning bulletin.\n\n**Note** This field is returned only for **CyberSource through VisaNet**.\n" - }, - "masterCardAuthenticationType": { - "type": "string", - "maxLength": 1, - "description": "Type of authentication for which the transaction qualifies as determined by the Mastercard authentication\nservice, which confirms the identity of the cardholder. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `1`: Transaction qualifies for Mastercard authentication type 1.\n - `2`: Transaction qualifies for Mastercard authentication type 2.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 132\n- Field: Mastercard Member Defined service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" - }, - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\n" - }, - "routing": { - "type": "object", - "properties": { - "network": { - "type": "string", - "maxLength": 4, - "description": "PIN Debit Services:\nContains the ID of the debit network to which the transaction was routed.\n\n| Code | Network |\n| --- | --- |\n| 0000 | Priority Routing or Generic File Update |\n| 0002 | Visa programs, Private Label and non-Visa Authorization Gateway Services |\n| 0003 | Interlink |\n| 0004 | Plus |\n| 0008 | Star |\n| 0009 | Pulse|\n| 0010 | Star |\n| 0011 | Star |\n| 0012 | Star (primary network ID) |\n| 0013 | AFFN |\n| 0015 | Star |\n| 0016 | Maestro |\n| 0017 | Pulse (primary network ID) |\n| 0018 | NYCE (primary network ID) |\n| 0019 | Pulse |\n| 0020 | Accel |\n| 0023 | NETS |\n| 0024 | CU24 |\n| 0025 | Alaska Option |\n| 0027 | NYCE |\n| 0028 | Shazam |\n| 0029 | EBT POS |\n\nFDC Nashville Global authorization service:\n\nIndicates whether the transaction was routed to a credit network, a debit network, or the STAR signature debit\nnetwork.\n- `C`: Credit network\n- `D`: Debit network (without signature)\n- `S`: STAR signature debit network\n" - }, - "networkName": { - "type": "string", - "maxLength": 10, - "description": "Name of the network to which the transaction was routed.\n" - }, - "customerSignatureRequired": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether you need to obtain the cardholder's signature.\n\nPossible values:\n- `Y`: You need to obtain the cardholder's signature.\n- `N`: You do not need to obtain the cardholder's signature.\n" - } - } - }, - "merchantNumber": { - "type": "string", - "maxLength": 15, - "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "retrievalReferenceNumber": { - "type": "string", - "maxLength": 20, - "description": "#### Ingenico ePayments\nUnique number that CyberSource generates to identify the transaction. You can use this value to identify transactions in the Ingenico ePayments Collections Report, which provides settlement information. Contact customer support for information about the report.\n\n### CyberSource through VisaNet\nRetrieval request number.\n" - }, - "paymentUrl": { - "type": "string", - "maxLength": 15, - "description": "Direct the customer to this URL to complete the payment." - }, - "completeUrl": { - "type": "string", - "maxLength": 2048, - "description": "The redirect URL for forwarding the consumer to complete page. This redirect needed by PSP to track browser information of consumer.\nPSP then redirect consumer to merchant success URL.\n" - } - } - }, - "issuerInformation": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 3, - "description": "Country in which the card was issued. This information enables you to determine whether the card was issued\ndomestically or internationally. Use the two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\nThis field is supported for Visa, Mastercard, Discover, Diners Club, JCB, and Maestro (International) on Chase\nPaymentech Solutions.\n\nFor details, see `auth_card_issuer_country` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "discretionaryData": { - "type": "string", - "maxLength": 255, - "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "countrySpecificDiscretionaryData": { - "type": "string", - "maxLength": 140, - "description": "Data defined by the issuer.\n\nThis national use field contains two subfields for information unique to the processing of Visa transactions by members in Japan.\nThis subfield contains the Katakana text to be printed on the receipt.\nFor details, see `jpo_issuer_message` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "responseCode": { - "type": "string", - "maxLength": 6, - "description": "Additional authorization code that must be printed on the receipt when returned by the processor.\n\nThis value is generated by the processor and is returned only for a successful transaction.\n\nThis reply field is supported only for these processors:\n- FDC Nashville Global\n- SIX\n" - }, - "responseRaw": { - "type": "string", - "maxLength": 355, - "description": "issuerInformation.responseRaw is the raw processor auth response returned to merchant in CYBS auth response if\nauth request includes \"processingInformation.isReturnAuthRecordEnabled=true\". If supported by the gateway code,\nit is available to merchants who auth through CYBS and run their own settlement processing.\n" - } - } - }, - "paymentAccountInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "prefix": { - "type": "string", - "maxLength": 6, - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "hashedNumber": { - "type": "string", - "maxLength": 60, - "description": "#### Visa Platform Connect\nThis API field will contain the SHA 256 hashed value of PAN.\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "prefix": { - "type": "string", - "maxLength": 6, - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "hashedNumber": { - "type": "string", - "maxLength": 60, - "description": "#### Visa Platform Connect\nThis API field will contain the SHA 256 hashed value of PAN.\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "properties": { - "prefix": { - "type": "string", - "maxLength": 6, - "description": "First six digits of token. CyberSource includes this field in the reply message when it decrypts the payment\nblob for the tokenized transaction.\n\nFor details, see `token_prefix` field description in [Google Pay Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Google_Pay_SCMP_API/html/)\n" - }, - "suffix": { - "type": "string", - "maxLength": 4, - "description": "Last four digits of token. CyberSource includes this field in the reply message when it decrypts the payment\nblob for the tokenized transaction.\n\nFor details, see `token_suffix` field description in [Google Pay Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Google_Pay_SCMP_API/html/)\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "assuranceLevel": { - "type": "string", - "maxLength": 2, - "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "requestorId": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - } - } - }, - "accountFeatures": { - "type": "object", - "properties": { - "accountType": { - "type": "string", - "maxLength": 2, - "description": "Type of account. This value is returned only if you requested a balance inquiry. Possible values:\n\n - `00`: Not applicable or not specified\n - `10`: Savings account\n - `20`: Checking account\n - `30`: Credit card account\n - `40`: Universal account\n\n#### PIN debit\nType of account. This value is returned only if you requested a balance inquiry.\n\nPossible values:\n- `00`: Not applicable or not specified\n- `10`: Savings account\n- `20`: Checking account\n- `40`: Universal account\n- `96`: Cash benefits account\n- `98`: Food stamp account\n\nReturned by PIN debit purchase.\n" - }, - "accountStatus": { - "type": "string", - "maxLength": 1, - "description": "Possible values:\n- `N`: Nonregulated\n- `R`: Regulated\n\nReturned by PIN debit credit or PIN debit purchase.\n\n**Note** This field is returned only for CyberSource through VisaNet.\n" - }, - "balances": { - "type": "array", - "description": "This is an array of multiple balances information an issuer can return for a given card.", - "items": { - "type": "object", - "properties": { - "accountType": { - "type": "string", - "maxLength": 2, - "description": "Type of account.\n\nThis value is returned only if you request a balance inquiry.\n\nPossible values:\n\n - `00`: Not applicable or not specified\n - `10`: Savings account\n - `20`: Checking account\n - `30`: Credit card account\n - `40`: Universal account\n\nBalance Account Types returned on EBT Debit card transactions:\n\n - `96`: Cash Benefits Account (PIN Debit Gateway EBT only)\n - `98`: Food Stamp Account (PIN Debit Gateway EBT only)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Remaining balance on the account. If the processor returns the sign, positive or negative, this sign is prefixed\nto the amount value as (+/-).\n" - }, - "amountType": { - "type": "string", - "maxLength": 2, - "description": "Type of amount. This value is returned only if you request a balance inquiry. The issuer determines the value\nthat is returned.\n\nPossible values for deposit accounts:\n\n - `01`: Current ledger (posted) balance.\n - `02`: Current available balance, which is typically the ledger balance minus outstanding authorizations. Some\n depository institutions also include pending deposits and the credit or overdraft line associated with the account.\n\nPossible values for credit card accounts:\n\n - `01`: Credit amount remaining for customer (open to buy).\n - `02`: Credit limit.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency of the remaining balance on the account.\n" - } - } - } - }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "balanceAmountType": { - "type": "string", - "maxLength": 2, - "description": "Type of amount. This value is returned only if you requested a balance inquiry. The issuer determines the value\nthat is returned. Possible values for deposit accounts:\n\n - `01`: Current ledger (posted) balance.\n - `02`: Current available balance, which is typically the ledger balance less outstanding authorizations.\n\nSome depository institutions also include pending deposits and the credit or overdraft line associated with the\naccount. Possible values for credit card accounts:\n\n - `01`: Credit amount remaining for customer (open to buy).\n - `02`: Credit limit.\n" - }, - "currency": { - "type": "string", - "maxLength": 5, - "description": "Currency of the remaining balance on the account. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nReturned by authorization service.\n\n#### PIN debit\nCurrency of the remaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "balanceSign": { - "type": "string", - "maxLength": 8, - "description": "Sign for the remaining balance on the account. Returned only when the processor returns this value. Possible values:\n\nPossible values:\n- `Positive`\n- `Negative`\n\n#### PIN debit\nSign for the remaining balance on the prepaid card. Returned only when the processor returns this value.\n\nReturned by PIN debit purchase.\n" - }, - "affluenceIndicator": { - "type": "string", - "maxLength": 13, - "description": "**Chase Paymentech Solutions**\n\nIndicates whether a customer has high credit limits. This information enables you to market high cost items to\nthese customers and to understand the kinds of cards that high income customers are using.\n\nThis field is supported for Visa, Mastercard, Discover, and Diners Club. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n\n#### Litle\n\nFlag that indicates that a Visa cardholder or Mastercard cardholder is in one of the affluent categories.\nPossible values:\n\n - `AFFLUENT`: High income customer with high spending pattern (>100k USD annual income and >40k USD annual\n card usage).\n - `MASS AFFLUENT`: High income customer (>100k USD annual income).\n\n Maximum length is 13.\n\n#### Chase Paymentech Solutions\n Maximum length is 1.\n" - }, - "category": { - "type": "string", - "maxLength": 7, - "description": "#### GPX\nMastercard product ID associated with the primary account number (PAN).\nReturned by authorization service.\n\n#### CyberSource through VisaNet\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the [Visa\nRequest & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### GPN\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the\n[Visa Request & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### Worldpay VAP\n**Important** Before using this field on Worldpay VAP,\nyou must contact CyberSource Customer Support to have\nyour account configured for this feature.\n\nType of card used in the transaction. The only possible value is:\n- `PREPAID`: Prepaid Card\n\nData Length: String (7)\n\n#### RBS WorldPay Atlanta\nType of card used in the transaction. Possible values:\n- `B`: Business Card\n- `O`: Noncommercial Card\n- `R`: Corporate Card\n- `S`: Purchase Card\n- `Blank`: Purchase card not supported\n\nData Length: String (1)\n" - }, - "commercial": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is a commercial card, which enables you to include Level II data in your transaction\nrequests. This field is supported for Visa and Mastercard on **Chase Paymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "group": { - "type": "string", - "maxLength": 1, - "description": "Type of commercial card. This field is supported only for CyberSource through VisaNet. Possible values:\n\n - `B`: Business card\n - `R`: Corporate card\n - `S`: Purchasing card\n - `0`: Noncommercial card\n\nReturned by authorization service.\n" - }, - "healthCare": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is a healthcare card. This field is supported for Visa and Mastercard on **Chase\nPaymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "payroll": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is a payroll card. This field is supported for Visa, Discover, Diners Club, and JCB\non **Chase Paymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "level3Eligible": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is eligible for Level III interchange fees, which enables you to include Level III\ndata in your transaction requests. This field is supported for Visa and Mastercard on **Chase Paymentech\nSolutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "pinlessDebit": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is a PINless debit card. This field is supported for Visa and Mastercard on **Chase\nPaymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "signatureDebit": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is a signature debit card.\n\nThis information enables you to alter the way an order is processed. For example, you might not want to reauthorize a transaction for a signature debit card, or you might\nwant to perform reversals promptly for a signature debit card. This field is supported for Visa, Mastercard, and\nMaestro (International) on Chase Paymentech Solutions. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "prepaid": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is a prepaid card. This information enables you to determine when a gift card or\nprepaid card is presented for use when establishing a new recurring, installment, or deferred billing\nrelationship.\n\nThis field is supported for Visa, Mastercard, Discover, Diners Club, and JCB on Chase Paymentech Solutions.\nPossible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - }, - "regulated": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the card is regulated according to the Durbin Amendment. If the card is regulated, the card\nissuer is subject to price caps and interchange rules. This field is supported for Visa, Mastercard, Discover,\nDiners Club, and JCB on Chase Paymentech Solutions. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "correctedAccountNumber": { - "type": "string", - "maxLength": 17, - "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_account_number` or `ecp_credit_corrected_account_number` field descriptions in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "correctedRoutingNumber": { - "type": "string", - "maxLength": 9, - "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_routing_number` or `ecp_credit_corrected_routing_number` reply field descriptions in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 12, - "maxLength": 32 - }, - "state": { - "type": "string", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "scheme": { - "type": "string", - "maxLength": 255, - "description": "Subtype of card account. This field can contain one of the following values:\n- Maestro International\n- Maestro UK Domestic\n- MasterCard Credit\n- MasterCard Debit\n- Visa Credit\n- Visa Debit\n- Visa Electron\n\n**Note** Additional values may be present.\n\nFor all possible values, see the `score_card_scheme` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "bin": { - "type": "string", - "maxLength": 255, - "description": "Credit card BIN (the first six digits of the credit card).Derived either from the `cc_bin` request field\nor from the first six characters of the `customer_cc_num` field.\n\nFor all possible values, see the `score_cc_bin` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "accountType": { - "type": "string", - "maxLength": 255, - "description": "Type of payment card account. This field can refer to a credit card, debit card, or prepaid card\naccount type.\n\nFor all possible values, see the `score_card_account_type` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "issuer": { - "type": "string", - "maxLength": 255, - "description": "Name of the bank or entity that issued the card account.\n\nFor all possible values, see the `score_card_issuer` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "binCountry": { - "type": "string", - "maxLength": 255, - "description": "Country (two-digit country code) associated with the BIN of the customer\u2019s card used for the payment.\nReturned if the information is available. Use this field for additional information when reviewing orders.\nThis information is also displayed in the details page of the CyberSource Business Center.\n\nFor all possible values, see the `bin_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "paymentInsightsInformation": { - "type": "object", - "properties": { - "responseInsights": { - "type": "object", - "properties": { - "category": { - "type": "string", - "maxLength": 60, - "description": "Categorization of response message from processor\n\nPossible Values:\n- `APPROVED`\n- `ISSUER_WILL_NEVER_APPROVE`\n- `ISSUER_CANT_APPROVE_AT_THIS_TIME`\n- `ISSUER_CANT_APPROVE_WITH_THESE_DETAILS`\n- `GENERIC_ERROR`\n- `OTHERS`\n- `MATCH_NOT_FOUND`\n" - }, - "categoryCode": { - "type": "string", - "maxLength": 2, - "description": "Categorization Code of response message from processor\n\nPossible Values:\n- `01` : Issuer Will Never Approve\n- `02` : Issuer Can't Approve at this Time\n- `03` : Issuer Can't Approve with these Details\n- `04` : Generic Error\n- `98` : Others\n- `99` : Payment Insights Response Category Match Not Found\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "totalAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount you requested for the payment or capture.\n\nThis value is returned for partial authorizations.\nThis field is also returned on incremental authorizations will contain the aggregated amount from the original authorizations and all the incremental authorizations.\n" - }, - "authorizedAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount that was authorized.\n\nReturned by authorization service.\n\n#### PIN debit\nAmount of the purchase.\n\nReturned by PIN debit purchase.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in Merchant Descriptors Using the SCMP API.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "level3TransmissionStatus": { - "type": "boolean", - "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" - }, - "salesSlipNumber": { - "type": "integer", - "maximum": 99999, - "description": "Transaction identifier that is generated. You have the option of printing the sales slip number on the receipt.\nThis field is supported only on Cybersource through Visanet and JCN gateway.\n\nOptional field.\n\n#### Card Present processing message\nIf you included this field in the request, the returned value is the value that you sent in the request.\nIf you did not include this field in the request, the system generated this value for you.\n\nThe difference between this reply field and the `processorInformation.systemTraceAuditNumber` field is that the\nsystem generates the system trace audit number (STAN), and you must print the receipt number on the receipt;\nwhereas you can generate the sales slip number, and you can choose to print the sales slip number on the receipt.\n" - } - } - }, - "rewardPointsDetails": { - "type": "object", - "properties": { - "pointsBeforeRedemption": { - "type": "string", - "maxLength": 10, - "description": "Loyalty points total balance before redemption.\nFor Example: Points, such as 100\n" - }, - "pointsValueBeforeRedemption": { - "type": "string", - "maxLength": 12, - "description": "The total value of loyalty points before redemption in the default currency. Max characters is 12 excluding the \".\" symbol\nFor Example: Points, such as 20.00\n" - }, - "pointsRedeemed": { - "type": "string", - "maxLength": 10, - "description": "Number of loyalty points that were redeemed.\nFor Example: Points, such as 100\n" - }, - "pointsValueRedeemed": { - "type": "string", - "maxLength": 12, - "description": "The value of the loyalty points that were redeemed in the default currency. Max characters is 12 excluding the \".\" symbol\nFor Example: Points, such as 100.00\n" - }, - "pointsAfterRedemption": { - "type": "string", - "maxLength": 10, - "description": "Loyalty Points remaining total balance after redemption.\nFor Example: Points, such as 20.00\n" - }, - "pointsValueAfterRedemption": { - "type": "string", - "maxLength": 12, - "description": "The value of the remaining loyalty points after redumption in the default currency. Max characters is 12 excluding the \".\" symbol\nFor Example: Points, such as 20.00\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - }, - "chipValidationType": { - "type": "string", - "maxLength": 2, - "description": "Entity or service that provided the validation results returned in `chipValidationResult`.\n\nPossible values:\n - `02`: MasterCard on-behalf pre-validation service (The MasterCard authorization platform validated the M/Chip cryptogram before the authorization request reached the issuer.)\n - `03`: MasterCard on-behalf stand-in service (The MasterCard authorization platform validated the M/Chip cryptogram because the issuer was not available.)\n - `50`: Issuer\n - `90`: Chip fall-back transaction downgrade process (The chip could not be read.)\n\nThis field is returned only for NFC payment network tokenization transactions with MasterCard.\n\n**Note** No CyberSource through VisaNet acquirers support EMV at this time.\n" - }, - "chipValidationResult": { - "type": "string", - "maxLength": 1, - "description": "Cryptogram validation results returned by the entity or service specified in `chipValidationType`.\n\nPossible values:\n- `A`: Application cryptogram is valid, but the application transaction counter (ATC) is outside allowed range. (A large jump in ATC values may indicate data copying or other fraud.)\n- `C`: Chip validation was completed successfully.\n- `E`: Application cryptogram is valid but the ATC indicates possible replay fraud.\n- `F`: Format error in the chip data.\n- `G`: Application cryptogram is valid but is not a valid authorization request cryptogram (ARQC).\n- `I`: Application cryptogram is invalid.\n- `T`: Application cryptogram is valid but terminal verification results (TVR) or card verification results (CVR) are invalid.\n- `U`: Application cryptogram could not be validated because of a technical error.\n\nThis field is returned only for NFC payment network tokenization transactions with MasterCard.\n\n**Note** No CyberSource through VisaNet acquirers support EMV at this time.\n" - } - } - }, - "amexCapnData": { - "type": "string", - "maxLength": 15, - "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - } - } - }, - "installmentInformation": { - "type": "object", - "properties": { - "additionalCosts": { - "type": "string", - "maxLength": 12, - "description": "Additional costs charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 128-139\n- Field: Total Other Costs\n" - }, - "additionalCostsPercentage": { - "type": "string", - "maxLength": 4, - "description": "Additional costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 140-143\n- Field: Percent of Total Other Costs\n" - }, - "amount": { - "type": "string", - "maxLength": 12, - "description": "Amount for the current installment payment.\n\nThis field is supported only for CyberSource through VisaNet.\n\nFor details, see `installment_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "amountFunded": { - "type": "string", - "maxLength": 12, - "description": "Amount funded.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 48-59\n- Field: Total Amount Funded\n" - }, - "amountRequestedPercentage": { - "type": "string", - "maxLength": 4, - "description": "Amount requested divided by the amount funded.\n\nFor example:\n- A value of 90.0 specifies 90%.\n- A value of 93.7 specifies 93.7%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 60-63\n- Field: Percent of Amount Requested\n" - }, - "annualFinancingCost": { - "type": "string", - "maxLength": 7, - "description": "Annual cost of financing the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 158-164\n- Field: Annual Total Cost of Financing\n" - }, - "annualInterestRate": { - "type": "string", - "maxLength": 7, - "description": "Annual interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 151-157\n- Field: Annual Interest Rate\n" - }, - "expenses": { - "type": "string", - "maxLength": 12, - "description": "Expenses charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 64-75\n- Field: Total Expenses\n" - }, - "expensesPercentage": { - "type": "string", - "maxLength": 4, - "description": "Expenses divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 76-79\n- Field: Percent of Total Expenses\n" - }, - "fees": { - "type": "string", - "maxLength": 12, - "description": "Fees charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 80-91\n- Field: Total Fees\n" - }, - "feesPercentage": { - "type": "string", - "maxLength": 4, - "description": "Fees divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 92-95\n- Field: Percent of Total Fees\n" - }, - "frequency": { - "type": "string", - "maxLength": 1, - "description": "Frequency of the installment payments. When you do not include this field in a request for a\nCrediario installment payment, CyberSource sends a space character to the processor.\n\nFor details, see `installment_frequency` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for CyberSource through VisaNet. Possible values:\n- `B`: Biweekly\n- `M`: Monthly\n- `W`: Weekly\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR9\n- Position: 41\n- Field: Installment Frequency\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "insurance": { - "type": "string", - "maxLength": 12, - "description": "Insurance charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 112-123\n- Field: Total Insurance\n" - }, - "insurancePercentage": { - "type": "string", - "maxLength": 4, - "description": "Insurance costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 124-127\n- Field: Percent Of Total Insurance\n" - }, - "invoiceData": { - "type": "string", - "maxLength": 20, - "description": "Invoice information that you want to provide to the issuer. This value is similar to a tracking number and is\nthe same for all installment payments for one purchase.\n\nThis field is supported only for installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 51-70\n- Field: Purchase Identification\n" - }, - "monthlyInterestRate": { - "type": "string", - "maxLength": 7, - "description": "Monthly interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 144-150\n- Field: Monthly Interest Rate\n" - }, - "planType": { - "type": "string", - "maxLength": 1, - "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" - }, - "sequence": { - "type": "integer", - "maximum": 99, - "description": "Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nWhen you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor.\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 38-40\n- Field: Installment Payment Number\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" - }, - "taxes": { - "type": "string", - "maxLength": 12, - "description": "Taxes collected by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 96-107\n- Field: Total Taxes\n" - }, - "taxesPercentage": { - "type": "string", - "maxLength": 4, - "description": "Taxes divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 108-111\n- Field: Percent of Total Taxes\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 12, - "description": "Total amount of the loan that is being paid in installments. This field is supported only for CyberSource\nthrough VisaNet.\n\nFor details, see \"Installment Payments\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "totalCount": { - "type": "integer", - "maximum": 99, - "description": "Total number of installments when making payments in installments.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\n\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### American Express Direct, Cielo, and Comercio Latino\nThis value is the total number of installments you approved.\n\n#### CyberSource Latin American Processing in Brazil\nThis value is the total number of installments that you approved. The default is 1.\n\n#### All Other Processors\nThis value is used along with _sequence_ to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as _sequence_ = 2 and _totalCount_ = 5.\n\n#### CyberSource through VisaNet\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 23-25\n- Field: Number of Installments\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 7-8\n- Field: Number of Installments\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR1\n- Position: 7-8\n- Field: Number of Installments\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR5\n- Position: 20-22\n- Field: Installment Total Count\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" - }, - "minimumTotalCount": { - "type": "string", - "maximum": 99, - "description": "\"Minimum number of installments offered by the issuer for this purchase. The issuer provides this value when the first installment payment is successful.\nThis field is supported for installment payments with Mastercard on CyberSource through VisaNet in all countries except Brazil, Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 75-76\n- Field: Mastercard Minimum Number Of Installments\n" - }, - "maximumTotalCount": { - "type": "string", - "maximum": 99, - "description": "Maximum number of installments offered by the issuer for this purchase. The issuer provides this value when the first installment payment is successful.\nThis field is supported for installment payments with Mastercard on CyberSource through VisaNet in all countries except Brazil, Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR5\n- Position: 77-78\n- Field: Mastercard Maximum Number Of Installments\n" - }, - "firstInstallmentAmount": { - "type": "string", - "maxLength": 13, - "description": "Amount of the first installment payment. The issuer provides this value when the first installment payment is successful.\nThis field is supported for Mastercard installment payments on CyberSource through VisaNet in all countries except Brazil,Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 23-34\n- Field: Amount of Each Installment\n" - }, - "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.\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" - } - } - }, - "tokenInformation": { - "type": "object", - "properties": { - "instrumentidentifierNew": { - "type": "boolean", - "description": "A value of true means the card number or bank account used to create an Instrument Identifier was new and did not already exist in the token vault.\nA value of false means the card number or bank account used to create an Instrument Identifier already existed in the token vault.\n" - }, - "customer": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customer token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 12, - "maxLength": 32 - }, - "state": { - "type": "string", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "dateOfBirth": { - "type": "string", - "maxLength": 8, - "description": "Recipient\u2019s date of birth. **Format**: `YYYYMMDD`.\n\nThis field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters\nbut otherwise does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" - }, - "issuedBy": { - "type": "string", - "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "verificationResults": { - "type": "string", - "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" - } - } - } - }, - "taxId": { - "type": "string", - "description": "The description for this field is not available." - } - } - }, - "riskInformation": { - "type": "object", - "description": "Contains the result of risk assessment.", - "properties": { - "profile": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" - }, - "desinationQueue": { - "type": "string", - "maxLength": 255, - "description": "Name of the queue where orders that are not automatically accepted are sent.\n" - }, - "selectorRule": { - "type": "string", - "maxLength": 255, - "description": "Name of the profile selector rule that chooses the profile to use for the\ntransaction. If no profile selector exists, the value is Default Active Profile.\n" - } - } - }, - "rules": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 255, - "description": "Description of the rule as it appears in the Profile Editor." - }, - "decision": { - "type": "string", - "maxLength": 255, - "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" - } - } - } - }, - "infoCodes": { - "type": "object", - "properties": { - "velocity": { - "type": "array", - "description": "List of information codes triggered by the order. These information codes were generated when you created\nthe order and product velocity rules and are returned so that you can associate them with the rules.\n", - "items": { - "type": "string", - "description": "Indicates excessive volume of transactions." - } - }, - "address": { - "type": "array", - "description": "Indicates a mismatch between the customer\u2019s billing and shipping addresses.\n", - "items": { - "type": "string" - } - }, - "customerList": { - "type": "array", - "description": "Indicates that customer information is associated with transactions that are either on the negative or\nthe positive list.\n", - "items": { - "type": "string" - } - }, - "deviceBehavior": { - "type": "array", - "description": "Indicates the device behavior information code(s) returned from device fingerprinting.\n", - "items": { - "type": "string" - } - }, - "identityChange": { - "type": "array", - "description": "Indicates excessive identity changes. The threshold is variable depending on the identity elements being\ncompared.\n", - "items": { - "type": "string" - } - }, - "internet": { - "type": "array", - "description": "Indicates a problem with the customer\u2019s email address, IP address, or billing address.\n", - "items": { - "type": "string" - } - }, - "phone": { - "type": "array", - "description": "Indicates a problem with the customer\u2019s phone number.\n", - "items": { - "type": "string" - } - }, - "suspicious": { - "type": "array", - "description": "Indicates that the customer provided potentially suspicious information.\n", - "items": { - "type": "string" - } - }, - "globalVelocity": { - "type": "array", - "description": "Indicates that the customer has a high purchase frequency.\n", - "items": { - "type": "string" - } - } - } - }, - "velocity": { - "type": "object", - "properties": { - "morphing": { - "type": "array", - "description": "List of information codes triggered by the order. These information codes were generated when you created the order and product velocity rules and are returned so that you can associate them with the rules.\n\nReturned by scoring service.\n", - "items": { - "type": "object", - "properties": { - "count": { - "type": "integer", - "maxLength": 5, - "description": "Morphing count specified by the number #.\n\n**Note** The count is not returned for the initial transaction.\n" - }, - "fieldName": { - "type": "string", - "maxLength": 255, - "description": "Field name of the morphing element. specified by the setting that you chose in the\nVelocity Editor.\n\nFor all possible values, see the `decisionReply_morphingElement_#_fieldName` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "informationCode": { - "type": "string", - "maxLength": 255, - "description": "Identifier that CyberSource assigned to the velocity rule specified by the number #.\n\nFor all possible values, see the `decision_velocity_morphing_#_info_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > \n" - } - } - } - }, - "address": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255, - "description": "Indicates a mismatch between the customer's billing and shipping addresses.\n\nFor all possible values, see the `score_address_info` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - } - }, - "casePriority": { - "type": "integer", - "maxLength": 1, - "description": "You receive this field only if you subscribe to the Enhanced Case Management service. The priority level ranges from 1 (highest) to 5 (lowest); the default value is 3. If you do not assign a priority to your rules or to your profiles, the default value is given to the order.\n\nFor all possible values, see the `decision_case_priority` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "localTime": { - "type": "string", - "maxLength": 255, - "description": "The customer's local time (`hh:mm:ss`), which is calculated from the transaction request time and the\ncustomer's billing address.\n\nFor details, see the `score_time_local` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/)\n" - }, - "score": { - "type": "object", - "properties": { - "factorCodes": { - "type": "array", - "items": { - "type": "string", - "description": "This field contains information that affected the score of the order.\nThis field will contain one or more codes, separated by carets (^).\n\nFor all possible values, see the `score_factors` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - }, - "modelUsed": { - "type": "string", - "maxLength": 255, - "description": "Name of the score model used for the transaction. If you did not include a custom model in your request,\nthis field contains the name of CyberSource\u2019s default model.\n\nFor all possible values, see the `score_model_used` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "result": { - "type": "string", - "maxLength": 255, - "description": "Total score calculated for this order. The value cannot be negative.\n\nFor all possible values, see the `score_score_result` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "ipAddress": { - "type": "object", - "description": "Contains detailed response information about the customer's IP address.", - "properties": { - "anonymizerStatus": { - "type": "string", - "maxLength": 255, - "description": "Indicates whether the transaction IP address is associated with a known anonymous proxy.\n\nFor all possible values, see the `score_ip_anonymizer_status` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "locality": { - "type": "string", - "maxLength": 255, - "description": "Name of the city decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_city` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "country": { - "type": "string", - "maxLength": 255, - "description": "Name of the country decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 255, - "description": "Name of the state decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_state` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "routingMethod": { - "type": "string", - "maxLength": 255, - "description": "Routing method decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_routing_method` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "carrier": { - "type": "string", - "maxLength": 255, - "description": "Provides the name of the organization that owns the ASN. The carrier is responsible for the traffic carried on the network or set of networks designated as an Autonomous System (AS) and identified by the ASN.\nWhile there are more than 27,000 active ASNs, there are fewer carriers, because a single carrier often manages several ASNs.\n" - }, - "organization": { - "type": "string", - "maxLength": 255, - "description": "The Registering Organization is the entity responsible for the actions and content associated with a given block of IP addresses. This is in contrast to the carrier, which is responsible for the routing of traffic for network blocks. Registering Organizations include many types of entities, including corporate, government, or educational entities, and ISPs managing the allocation and use of network blocks.\n" - } - } - }, - "providers": { - "type": "object", - "properties": { - "providerName": { - "type": "array", - "items": { - "type": "object", - "description": "Name of the 3rd party provider, for example, Emailage.\n\nFor all possible values, see the `decision_provider_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n", - "properties": { - "fieldName": { - "type": "array", - "items": { - "type": "string", - "description": "Field name, for example, email address domain name (domain_name).\n\nFor all possible values, see the `decision_provider_#_field_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - }, - "fieldValue": { - "type": "array", - "items": { - "type": "string", - "description": "Value for the field, for example, yahoo.com." - } - } - } - } - } - } - }, - "travel": { - "type": "object", - "properties": { - "actualFinalDestination": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of actual final destination on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of actual final destination on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of actual final destination on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of actual final destination on the route." - } - } - }, - "firstDeparture": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of first departure on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of first departure on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of first departure on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of first departure on the route." - } - } - }, - "firstDestination": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of first destination on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of first destination on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of first destination on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of first destination on the route." - } - } - }, - "lastDestination": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of last destination on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of last destination on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of last destination on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of last destination on the route." - } - } - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "accessToken": { - "type": "string", - "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" - }, - "acsRenderingType": { - "type": "string", - "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" - }, - "acsTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" - }, - "acsUrl": { - "type": "string", - "maxLength": 2048, - "description": "URL for the card-issuing bank\u2019s authentication form that you receive when the card is enrolled.\nThe value can be very large.\n" - }, - "authenticationPath": { - "type": "string", - "description": "Indicates what displays to the customer during the authentication process.\nThis field can contain one of these values:\n- `ADS`: (Card not enrolled) customer prompted to activate the card during the checkout process.\n- `ATTEMPTS`: (Attempts processing) Processing briefly displays before the checkout process is completed.\n- `ENROLLED`: (Card enrolled) the card issuer\u2019s authentication window displays.\n- `UNKNOWN`: Card enrollment status cannot be determined.\n- `NOREDIRECT`: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer.\n\nThe following values can be returned if you are using rules-based payer authentication.\n- `RIBA`: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely\nto be challenged cannot be determined.\n- `RIBA_PASS`: The card-issuing bank supports risk-based authentication and it is likely that the\ncardholder will not be challenged to provide credentials, also known as _silent authentication_.\n\nFor details about possible values, see `pa_enroll_authentication_path` field description and \"Rules-Based Payer Authentication\"\nin [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" - }, - "authorizationPayload": { - "type": "string", - "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" - }, - "cardholderMessage": { - "type": "string", - "maxLength": 128, - "description": "Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder.\nFor example, \u201cAdditional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.\u201d.\nThe Issuing Bank can optionally support this value.\n" - }, - "cavv": { - "type": "string", - "maxLength": 255, - "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" - }, - "cavvAlgorithm": { - "type": "string", - "maxLength": 1, - "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" - }, - "challengeCancelCode": { - "type": "string", - "maxLength": 2, - "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" - }, - "challengeRequired": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a challenge is required in order to complete authentication.\n**Note** Regional mandates might determine that a challenge is required.\n\nPossible values:\n- `Y`: Challenge required\n- `N`: Challenge not required\n**Note** Used by the Hybrid integration.\n" - }, - "decoupledAuthenticationIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" - }, - "directoryServerErrorCode": { - "type": "string", - "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" - }, - "directoryServerErrorDescription": { - "type": "string", - "maxLength": 4096, - "description": "Directory server text and additional detail about the error for this transaction.\n" - }, - "ecommerceIndicator": { - "type": "string", - "maxLength": 255, - "description": "Commerce indicator for cards not enrolled. This field contains one of these values:\n- `internet`: Card not enrolled, or card type not supported by payer authentication. No liability shift.\n- `js_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `js_failure`: J/Secure directory service is not available. No liability shift.\n- `spa`: Mastercard card not enrolled in the SecureCode program. No liability shift.\n- `vbv_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `vbv_failure`: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive\nthis result if Visa\u2019s directory service is not available. No liability shift.\n" - }, - "eci": { - "type": "string", - "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" - }, - "eciRaw": { - "type": "string", - "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" - }, - "effectiveAuthenticationType": { - "type": "string", - "maxLength": 2, - "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" - }, - "ivr": { - "type": "object", - "properties": { - "enabledMessage": { - "type": "boolean", - "description": "Flag to indicate if a valid IVR transaction was detected.\n" - }, - "encryptionKey": { - "type": "string", - "maxLength": 16, - "description": "Encryption key to be used in the event the ACS requires encryption of the credential field.\n" - }, - "encryptionMandatory": { - "type": "boolean", - "description": "Flag to indicate if the ACS requires the credential to be encrypted.\n" - }, - "encryptionType": { - "type": "string", - "maxLength": 20, - "description": "An indicator from the ACS to inform the type of encryption that should be used in the event the ACS requires encryption of the credential field.\n" - }, - "label": { - "type": "string", - "maxLength": 20, - "description": "An ACS Provided label that can be presented to the Consumer. Recommended use with an application.\n" - }, - "prompt": { - "type": "string", - "maxLength": 80, - "description": "An ACS provided string that can be presented to the Consumer. Recommended use with an application.\n" - }, - "statusMessage": { - "type": "string", - "maxLength": 80, - "description": "An ACS provided message that can provide additional information or details.\n" - } - } - }, - "strongAuthentication": { - "type": "object", - "properties": { - "issuerInformation": { - "type": "object", - "properties": { - "riskAnalysisExemptionResult": { - "type": "string", - "maxLength": 80, - "description": "Possible values: Visa Platform Connect\n- `8401` Merchant not participating in Visa Trusted Listing Program.\n- `8402` Issuer not participating in Visa Trusted Listing Program.\n- `8403` Cardholder has not trusted the merchant (supplied by Visa Net).\n- `8404` Indeterminate or invalid issuer response.\n- `8473` Cardholder has not trusted the merchant (issuer-supplied).\n- `8474` Did not meet the exemption criteria (issuer-supplied).\n\nUpto 20 Values may be received in a transaction.\n" - }, - "trustedMerchantExemptionResult": { - "type": "string", - "maxLength": 4, - "description": "Possible values: Visa Platform Connect\n- `2` Trusted merchant exemption validated/honored.\n- `3` Trusted merchant exemption failed validation/not honored.\n" - } - } - } - } - }, - "networkScore": { - "type": "string", - "maxLength": 2, - "description": "The global score calculated by the CB scoring platform and returned to merchants.\n" - }, - "pareq": { - "type": "string", - "description": "Payer authentication request (PAReq) message that you need to forward to the ACS.\nThe value can be very large. The value is in base64.\n" - }, - "paresStatus": { - "type": "string", - "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" - }, - "proofXml": { - "type": "string", - "description": "Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need\nto show proof of enrollment checking, you may need to parse the string for the information required by the\npayment card company. The value can be very large. For details about possible values, see the `pa_enroll_proofxml` field description in\n[CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n- For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.\n- For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment\nchecking for any payer authentication transaction that you re-present because of a chargeback.\n" - }, - "proxyPan": { - "type": "string", - "description": "Encrypted version of the card number used in the payer authentication request message.\n" - }, - "sdkTransactionId": { - "type": "string", - "maxLength": 36, - "description": "SDK unique transaction identifier that is generated on each new transaction.\n" - }, - "signedParesStatusReason": { - "type": "string", - "maxLength": 2, - "description": "Provides additional information as to why the PAResStatus has a specific value.\n" - }, - "specificationVersion": { - "type": "string", - "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" - }, - "stepUpUrl": { - "type": "string", - "maxLength": 2048, - "description": "The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.\n" - }, - "threeDSServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" - }, - "ucafAuthenticationData": { - "type": "string", - "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" - }, - "ucafCollectionIndicator": { - "type": "string", - "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" - }, - "veresEnrolled": { - "type": "string", - "description": "Result of the enrollment check. This field can contain one of these values:\n- `Y`: Card enrolled or can be enrolled; you must authenticate. Liability shift.\n- `N`: Card not enrolled; proceed with authorization. Liability shift.\n- `U`: Unable to authenticate regardless of the reason. No liability shift.\n\n**Note** This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for\nthis processor, you must send the value of this field in your authorization request.\n\nThe following value can be returned if you are using rules-based Payer Authentication:\n- `B`: Indicates that authentication was bypassed.\n\nFor details, see `pa_enroll_veres_enrolled` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" - }, - "whiteListStatusSource": { - "type": "string", - "maxLength": 2, - "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" - }, - "xid": { - "type": "string", - "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" - }, - "directoryServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" - }, - "authenticationResult": { - "type": "string", - "description": "Raw authentication data that comes from the cardissuing bank. Primary authentication field that\nindicates if authentication was successful and if liability shift occurred. You should examine first the\nresult of this field. This field contains one of these values:\n- `-1`: Invalid PARes.\n- `0`: Successful validation.\n- `1`: Cardholder is not participating, but the attempt to authenticate was recorded.\n- `6`: Issuer unable to perform authentication.\n- `9`: Cardholder did not complete authentication.\n" - }, - "authenticationStatusMsg": { - "type": "string", - "description": "Message that explains the authenticationResult reply field.\n" - }, - "indicator": { - "type": "string", - "description": "Indicator used to differentiate Internet transactions from other types. The authentication failed if this field\nis not returned. For Visa, if your payment processor is Streamline, Barclays, AIBMS, or FDC Germany,\nyou receive the value vbv_failure instead of internet when eci is 07.\nThe value of this field is passed automatically to the authorization service if you request the services\ntogether. This field contains one of these values:\n- `aesk`: American Express SafeKey authentication verified successfully.\n- `aesk_attempted`: Card not enrolled in American Express SafeKey, but the attempt to authenticate was recorded.\n- `dipb`: Discover ProtectBuy authentication verified successfully.\n- `dipb_attempted`: Card not enrolled in Discover ProtectBuy, but the attempt to authenticate was recorded.\n- `internet`: Authentication was not verified successfully.\n- `js`: J/Secure authentication verified successfully.\n- `js_attempted`: Card not enrolled in J/Secure, but the attempt to authenticate was recorded.\n- `moto`: Mail or telephone order.\n- `pb_attempted`: Card not enrolled in Diners Club ProtectBuy, but the attempt to authenticate was recorded.\n- `recurring`: Recurring transaction.\n- `spa`: Mastercard Identity Check authentication verified successfully.\n- `spa_failure`: Mastercard Identity Check failed authentication.\n- `vbv`: Visa Secure authentication verified successfully.\n- `vbv_attempted`: Card not enrolled in Visa Secure, but the attempt to authenticate was recorded.\n- `vbv_failure`: Visa Secure authentication unavailable.\n" - }, - "interactionCounter": { - "type": "string", - "maxLength": 2, - "description": "Indicates the number of authentication cycles attempted by the cardholder and is tracked by the Issuing Banks ACS.Example: if customer gets the challenge window and enter in their one time password and hit submit then that interaction counter should just be 1.\nWhen customer gets the challenge window and the bank asks if they want to have the one time password sent to their phone or their email and they have to choose before going to the next screen to enter in their one time password then this interaction count would be 2.\nOne for the selection of how they want the one time password delivered and another with them actually entering in the one time password and hitting the submit button.\n" - }, - "whiteListStatus": { - "type": "string", - "maxLength": 1, - "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/payments/4963015972176007901546", - "method": "GET" - }, - "authReversal": { - "href": "/pts/v2/payments/4963015972176007901546/reversals", - "method": "POST" - }, - "capture": { - "href": "/pts/v2/payments/4963015972176007901546/captures", - "method": "POST" - }, - "refund": { - "href": "/pts/v2/payments/4963015972176007901546/refunds", - "method": "POST" - }, - "void": { - "href": "/pts/v2/payments/4963015972176007901546/voids", - "method": "POST" - } - }, - "id": "4963015972176007901546", - "submitTimeUtc": "2017-06-01T071957Z", - "status": "200", - "reconciliationId": "39570726X3E1LBQR", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "authorizedAmount": "102.21", - "currency": "USD" - } - }, - "processorInformation": { - "approvalCode": "888888", - "cardVerification": { - "resultCode": "" - }, - "avs": { - "code": "X", - "codeRaw": "I1" - }, - "responseCode": "100" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "ptsV2PaymentsPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - CARD_TYPE_NOT_ACCEPTED\n - INVALID_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\n - INVALID_AMOUNT\n - INVALID_CARD_TYPE\n - INVALID_PAYMENT_ID\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2PaymentsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Simple Authorization(Internet)", - "sample-name": "Process Payment", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "paymentInformation": { - "card": { - "number": "4111111111111111", - "expirationMonth": "12", - "expirationYear": "2031" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - } - }, - "example1": { - "summary": "Authorization with Capture(Sale)", - "sample-name": "Process Payment Simple Authorization with Capture(Sale)", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "capture": true - }, - "paymentInformation": { - "card": { - "number": "4111111111111111", - "expirationMonth": "12", - "expirationYear": "2031" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - } - }, - "example2": { - "summary": "Payment with Flex Token", - "sample-name": "Payment with Flex Token", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "tokenInformation": { - "transientTokenJwt": "eyJraWQiOiIwN0JwSE9abkhJM3c3UVAycmhNZkhuWE9XQlhwa1ZHTiIsImFsZyI6IlJTMjU2In0.eyJkYXRhIjp7ImV4cGlyYXRpb25ZZWFyIjoiMjAyMCIsIm51bWJlciI6IjQxMTExMVhYWFhYWDExMTEiLCJleHBpcmF0aW9uTW9udGgiOiIxMCIsInR5cGUiOiIwMDEifSwiaXNzIjoiRmxleC8wNyIsImV4cCI6MTU5MTc0NjAyNCwidHlwZSI6Im1mLTAuMTEuMCIsImlhdCI6MTU5MTc0NTEyNCwianRpIjoiMUMzWjdUTkpaVjI4OVM5MTdQM0JHSFM1T0ZQNFNBRERCUUtKMFFKMzMzOEhRR0MwWTg0QjVFRTAxREU4NEZDQiJ9.cfwzUMJf115K2T9-wE_A_k2jZptXlovls8-fKY0muO8YzGatE5fu9r6aC4q7n0YOvEU6G7XdH4ASG32mWnYu-kKlqN4IY_cquRJeUvV89ZPZ5WTttyrgVH17LSTE2EvwMawKNYnjh0lJwqYJ51cLnJiVlyqTdEAv3DJ3vInXP1YeQjLX5_vF-OWEuZfJxahHfUdsjeGhGaaOGVMUZJSkzpTu9zDLTvpb1px3WGGPu8FcHoxrcCGGpcKk456AZgYMBSHNjr-pPkRr3Dnd7XgNF6shfzIPbcXeWDYPTpS4PNY8ZsWKx8nFQIeROMWCSxIZOmu3Wt71KN9iK6DfOPro7w" - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "VDP", - "address1": "201 S. Division St.", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "firstName": "RTS", - "phoneNumber": "999999999", - "district": "MI", - "buildingNumber": "123", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - } - }, - "example3": { - "summary": "Payment with Flex Token(Create Permanent TMS token)", - "sample-name": "Payment with Flex Token(Create Permanent TMS token)", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "TOKEN_CREATE" - ], - "actionTokenTypes": [ - "customer", - "paymentInstrument", - "shippingAddress" - ] - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US" - }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "tokenInformation": { - "transientTokenJwt": "eyJraWQiOiIwODVLd3ZiZHVqZW1DZDN3UnNxVFg3RG5nZzlZVk04NiIsImFsZyI6IlJTMjU2In0.eyJkYXRhIjp7Im51bWJlciI6IjQxMTExMVhYWFhYWDExMTEiLCJ0eXBlIjoiMDAxIn0sImlzcyI6IkZsZXgvMDgiLCJleHAiOjE1OTU2MjAxNTQsInR5cGUiOiJtZi0wLjExLjAiLCJpYXQiOjE1OTU2MTkyNTQsImp0aSI6IjFFMTlWWVlBUEFEUllPSzREUUM1NFhRN1hUVTlYN01YSzBCNTc5UFhCUU1HUUExVU1MOFI1RjFCM0IzQTU4MkIifQ.NKSM8zuT9TQC2OIUxIFJQk4HKeHhj_RGWmEqOQhBi0TIynt_kCIup1UVtAlhPzUfPWLwRrUVXnA9dyjLt_Q-pFZnvZ2lVANbiOq_R0us88MkM_mqaELuInCwxFeFZKA4gl8XmDFARgX1aJttC19Le6NYOhK2gpMrV4i0yz-IkbScsk0_vCH3raayNacFU2Wy9xei6H_V0yw2GeOs7kF6wdtMvBNw_uoLXd77LGE3LmV7z1TpJcG1SXy2s0bwYhEvkQGnrq6FfY8w7-UkDBWT1GhU3ZVP4y7h0l1WEX2xqf_ze25ZiYJQfWrEWPBHXRubOpAuaf4rfeZei0mRwPU-sQ" - } - } - }, - "example4": { - "summary": "Authorization with Customer Token Creation", - "sample-name": "Authorization with Customer Token Creation", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "TOKEN_CREATE" - ], - "actionTokenTypes": [ - "customer", - "paymentInstrument", - "shippingAddress" - ] - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US" - }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example5": { - "summary": "Authorization with Customer Token Id", - "sample-name": "Authorization with Customer Token Id", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "customer": { - "id": "AA7D470B3D1232F0E05341588E0A91E3" - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example6": { - "summary": "Authorization with Customer Token, Default Payment Instrument and Shipping Address Creation", - "sample-name": "Authorization with Customer Token, Default Payment Instrument and Shipping Address Creation", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "TOKEN_CREATE" - ], - "actionTokenTypes": [ - "paymentInstrument", - "shippingAddress" - ] - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US" - }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - }, - "customer": { - "id": "AA7D470B3D1232F0E05341588E0A91E3" - } - }, - "tokenInformation": { - "paymentInstrument": { - "default": true - }, - "shippingAddress": { - "default": true - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example7": { - "summary": "Authorization with TMS Token bypassing Network Token", - "sample-name": "Authorization with TMS Token bypassing Network Token", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "tokenInformation": { - "networkTokenOption": "ignore" - }, - "paymentInformation": { - "instrumentIdentifier": { - "id": "7010000000016241111" - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example8": { - "summary": "Authorization with Customer, Payment Instrument and Shipping Address Token Id", - "sample-name": "Authorization with Customer, Payment Instrument and Shipping Address Token Id", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "customer": { - "id": "B21E6717A6F03479E05341588E0A303F" - }, - "paymentInstrument": { - "id": "B21E6B7E8BB3388EE05341588E0AFC84" - }, - "shippingAddress": { - "id": "B21E6717A6F33479E05341588E0A303F" - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example9": { - "summary": "Authorization with Instrument Identifier Token Creation", - "sample-name": "Authorization with Instrument Identifier Token Creation", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "TOKEN_CREATE" - ], - "actionTokenTypes": [ - "instrumentIdentifier" - ], - "commerceIndicator": "internet" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US" - }, - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example10": { - "summary": "Authorization with Decision Manager", - "sample-name": "Authorization with Decision Manager", - "value": { - "clientReferenceInformation": { - "code": "TSYS_Eh_FE_01" - }, - "orderInformation": { - "billTo": { - "firstName": "JSON", - "lastName": "RTS", - "address1": "201 S. Division St._1", - "locality": "Foster City", - "administrativeArea": "CA", - "postalCode": "94404", - "country": "US", - "email": "beforeauth@cybersource.com", - "phoneNumber": "6504327113" - }, - "amountDetails": { - "totalAmount": "10", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "number": "4111111111111111", - "expirationMonth": "11", - "expirationYear": "2025" - } - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example11": { - "summary": "Authorization - Skip DecisionManager for single transaction", - "sample-name": "Authorization - Skip DecisionManager for single transaction", - "value": { - "processingInformation": { - "actionList": [ - "DECISION_SKIP" - ] - }, - "clientReferenceInformation": { - "code": "TC50171_16" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "amountDetails": { - "totalAmount": "10", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "number": "4111111111111111", - "expirationMonth": "11", - "expirationYear": "2025" - } - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example12": { - "summary": "Authorization with Decision Manager (Device Information)", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "deviceInformation": { - "cookiesAccepted": "yes", - "hostName": "host.com", - "httpBrowserEmail": "xyz@gmail.com", - "userAgent": "Chrome", - "ipAddress": "64.124.61.215" - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example13": { - "summary": "Authorization with Decision Manager (Merchant Defined Information)", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "merchantDefinedInformation": [ - { - "key": "1", - "value": "Test" - }, - { - "key": "2", - "value": "Test2" - } - ] - }, - "parentTag": "Authorization with Decision Manager" - }, - "example14": { - "summary": "Authorization with Decision Manager (Travel Information)", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "travelInformation": { - "completeRoute": "SFO-JFK:JFK-BLR", - "departureTime": "2011-03-20 11:30pm GMT", - "journeyType": "One way", - "legs": [ - { - "destination": "JFK", - "origination": "SFO" - }, - { - "destination": "BLR", - "origination": "JFK" - } - ] - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example15": { - "summary": "Authorization with Decision Manager (Buyer Information)", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "buyerInformation": { - "hashedPassword": "", - "dateOfBirth": "19980505", - "personalIdentification": [ - { - "id": "1a23apwe98", - "type": "CPF" - } - ] - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example16": { - "summary": "Authorization with Decision Manager (Shipping Information)", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - }, - "shipTo": { - "address1": "96, powers street", - "locality": "Clearwater milford", - "country": "IN", - "firstName": "James", - "lastName": "Smith", - "phoneNumber": "7606160717", - "administrativeArea": "KA", - "postalCode": "560056" - } - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example17": { - "summary": "Authorization with Decision Manager (custom setup)", - "sample-name": "Authorization with Decision Manager (custom setup)", - "value": { - "processingInformation": { - "actionList": [ - "DECISION" - ] - }, - "clientReferenceInformation": { - "code": "TC50171_16" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "amountDetails": { - "totalAmount": "10", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "number": "4111111111111111", - "expirationMonth": "11", - "expirationYear": "2025" - } - } - }, - "parentTag": "Authorization with Decision Manager" - }, - "example18": { - "summary": "Authorization with PA Enroll (Authentication Needed)", - "sample-name": "Authorization with PA Enroll (Authentication Needed)", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "CONSUMER_AUTHENTICATION" - ] - }, - "consumerAuthenticationInformation": { - "referenceId": "CybsCruiseTester-8ac0b02f", - "requestorId": "123123197675" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Smith", - "address1": "201 S. Division St._1", - "address2": "Suite 500", - "locality": "Foster City", - "administrativeArea": "CA", - "postalCode": "94404", - "country": "US", - "phoneNumber": "6504327113", - "email": "accept@cybersource.com" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "usd" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2023", - "number": "4000000000001091", - "expirationMonth": "12" - } - } - }, - "parentTag": "Authorization with Payer Authentication" - }, - "example19": { - "summary": "Authorization with Payer Auth Validation", - "sample-name": "Authorization with Payer Auth Validation", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "VALIDATE_CONSUMER_AUTHENTICATION" - ] - }, - "consumerAuthenticationInformation": { - "authenticationTransactionId": "OiCtXA1j1AxtSNDh5lt1" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Smith", - "address1": "201 S. Division St._1", - "address2": "Suite 500", - "locality": "Foster City", - "administrativeArea": "CA", - "postalCode": "94404", - "country": "US", - "phoneNumber": "6504327113", - "email": "accept@cybs.com" - } - }, - "amountDetails": { - "amount": "100.00", - "currency": "USD" - }, - "paymentInformation": { - "card": { - "expirationYear": "2023", - "number": "4000000000001091", - "expirationMonth": "01" - } - } - }, - "parentTag": "Authorization with Payer Authentication" - }, - "example20": { - "summary": "Authorization with DM(Accept) + PA Enroll", - "sample-name": "Authorization with DM(Accept) + PA Enroll", - "value": { - "clientReferenceInformation": { - "code": "cbys_test" - }, - "processingInformation": { - "actionList": [ - "CONSUMER_AUTHENTICATION" - ] - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "phoneNumber": "4158880000", - "email": "accept@cybersource.com" - }, - "amountDetails": { - "totalAmount": "1.00", - "currency": "usd" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "340000000001007", - "securityCode": "1234", - "expirationMonth": "12" - } - } - }, - "parentTag": "Authorization with Payer Authentication" - }, - "example21": { - "summary": "Authorization with DM(Review) + PA Enroll", - "sample-name": "Authorization with DM(Review) + PA Enroll", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "CONSUMER_AUTHENTICATION" - ] - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "372425119311008", - "securityCode": "1234", - "expirationMonth": "12" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "review@domain.com", - "phoneNumber": "4158880000" - } - } - }, - "parentTag": "Authorization with Payer Authentication" - }, - "example22": { - "summary": "Authorization with DM(Reject) + PA Enroll", - "sample-name": "Authorization with DM(Reject) + PA Enroll", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "actionList": [ - "CONSUMER_AUTHENTICATION" - ] - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "372425119311008", - "securityCode": "1234", - "expirationMonth": "12" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "reject@domain.com", - "phoneNumber": "4158880000" - } - } - }, - "parentTag": "Authorization with Payer Authentication" - }, - "example23": { - "summary": "Payment Network Tokenization", - "sample-name": "Process Payment with Network Tokenization", - "value": { - "clientReferenceInformation": { - "code": "TC_123122" - }, - "processingInformation": { - "commerceIndicator": "vbv" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - } - }, - "paymentInformation": { - "tokenizedCard": { - "expirationYear": "2031", - "number": "4111111111111111", - "expirationMonth": "12", - "transactionType": "1" - } - }, - "consumerAuthenticationInformation": { - "cavv": "AAABCSIIAAAAAAACcwgAEMCoNh+=", - "xid": "T1Y0OVcxMVJJdkI0WFlBcXptUzE=" - } - } - }, - "example24": { - "summary": "Digital Payment - GooglePay", - "sample-name": "Process Payment with GooglePay", - "value": { - "clientReferenceInformation": { - "code": "TC_1231223" - }, - "processingInformation": { - "paymentSolution": "012" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "John", - "lastName": "Deo", - "phoneNumber": "6504327113", - "address1": "901 Metro Center Blvd", - "postalCode": "94404", - "locality": "Foster City", - "administrativeArea": "CA", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "20", - "currency": "USD" - } - }, - "paymentInformation": { - "tokenizedCard": { - "expirationYear": "2020", - "number": "4111111111111111", - "expirationMonth": "12", - "transactionType": "1", - "cryptogram": "EHuWW9PiBkWvqE5juRwDzAUFBAk=" - } - } - } - }, - "example25": { - "summary": "Digital Payments - ApplePay", - "sample-name": "Process Payment with ApplePay", - "value": { - "clientReferenceInformation": { - "code": "TC_1231223" - }, - "processingInformation": { - "paymentSolution": "001" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "John", - "lastName": "Deo", - "phoneNumber": "6504327113", - "address1": "901 Metro Center Blvd", - "postalCode": "94404", - "locality": "Foster City", - "administrativeArea": "CA", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10", - "currency": "USD" - } - }, - "paymentInformation": { - "tokenizedCard": { - "expirationYear": "2031", - "number": "4111111111111111", - "expirationMonth": "12", - "transactionType": "1", - "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=" - } - } - } - }, - "example26": { - "summary": "Zero Dollar Authorization", - "sample-name": "Process Payment for Zero Dollar Authorization", - "value": { - "clientReferenceInformation": { - "code": "1234567890" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": 0, - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "5555555555554444", - "securityCode": "123", - "expirationMonth": "12" - } - } - } - }, - "example27": { - "summary": "Level II Data", - "sample-name": "Process Payment with Level II Data", - "value": { - "clientReferenceInformation": { - "code": "TC50171_12" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "invoiceDetails": { - "purchaseOrderNumber": "LevelII Auth Po" - }, - "amountDetails": { - "totalAmount": "112.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12", - "type": "001" - } - } - } - }, - "example28": { - "summary": "Level III Data", - "sample-name": "Process Payment with Level III Data", - "value": { - "clientReferenceInformation": { - "code": "TC50171_14" - }, - "processingInformation": { - "purchaseLevel": "3" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "invoiceDetails": { - "purchaseOrderNumber": "LevelIII Auth Po" - }, - "lineItems": [ - { - "discountApplied": "false", - "quantity": "10", - "unitPrice": "10.00", - "totalAmount": "100", - "productCode": "default", - "amountIncludesTax": "false" - } - ], - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12", - "type": "001" - } - } - } - }, - "example29": { - "summary": "Partial Authorization", - "sample-name": "Process Payment with Partial Authorization", - "value": { - "clientReferenceInformation": { - "code": "1234567890" - }, - "pointOfSaleInformation": { - "cardPresent": "true", - "catLevel": "6", - "emv": { - "fallbackCondition": "1", - "fallback": "false" - }, - "terminalCapability": "4" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "7012.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - } - } - } - }, - "example30": { - "summary": "Electronic Check Debits", - "sample-name": "Process Payment ECheck Debits", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "paymentInformation": { - "paymentType": { - "name": "CHECK" - }, - "bank": { - "account": { - "type": "C", - "number": "4100" - }, - "routingNumber": "071923284" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com" - } - } - }, - "parentTag": "Electronic Check(eCheck) and ServiceFees" - }, - "example31": { - "summary": "Electronic Check Debits with Legacy Token", - "sample-name": "Process Payment ECheck Debits with Legacy Token", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "paymentInformation": { - "paymentType": { - "name": "CHECK" - }, - "legacyToken": { - "id": "7500BB199B4270EFE05340588D0AFCAD" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com" - } - } - }, - "parentTag": "Electronic Check(eCheck) and ServiceFees" - }, - "example32": { - "summary": "Service Fees with Credit Card transaction", - "sample-name": "Process Payment Service Fees with Credit Card transaction", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "2325.00", - "currency": "USD", - "serviceFeeAmount": "30.0" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "securityCode": "123", - "expirationMonth": "12" - } - }, - "merchantInformation": { - "serviceFeeDescriptor": { - "name": "Vacations Service Fee", - "contact": "8009999999", - "state": "CA" - } - } - }, - "parentTag": "Electronic Check(eCheck) and ServiceFees" - }, - "example33": { - "summary": "Authorization Using Swiped Track Data", - "sample-name": "Authorization Using Swiped Track Data", - "value": { - "clientReferenceInformation": { - "code": "ABC123", - "partner": { - "thirdPartyCertificationNumber": "123456789012" - } - }, - "processingInformation": { - "commerceIndicator": "retail", - "authorizationOptions": { - "partialAuthIndicator": "true" - } - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?", - "cardPresent": "Y", - "entryMode": "swiped", - "terminalCapability": "2" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example34": { - "summary": "Sale Using Swiped Track Data with Visa Platform Connect", - "sample-name": "Sale Using Swiped Track Data with Visa Platform Connect", - "value": { - "clientReferenceInformation": { - "code": "123456" - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": "true", - "authorizationOptions": { - "partialAuthIndicator": "true" - } - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", - "cardPresent": "Y", - "entryMode": "swiped", - "terminalCapability": "2" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example35": { - "summary": "Sale Using Keyed Data with Visa Platform Connect", - "sample-name": "Sale Using Keyed Data with Visa Platform Connect", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": true, - "authorizationOptions": { - "partialAuthIndicator": true, - "ignoreAvsResult": true, - "ignoreCvResult": true - } - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "entryMode": "keyed", - "terminalCapability": 2 - }, - "paymentInformation": { - "card": { - "number": 4111111111111111, - "securityCode": 123, - "expirationMonth": 12, - "expirationYear": 2031 - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example36": { - "summary": "Sale Using Keyed Data with Balance Inquiry", - "sample-name": "Sale Using Keyed Data with Balance Inquiry", - "value": { - "clientReferenceInformation": { - "code": 123456, - "partner": { - "thirdPartyCertificationNumber": 123456789012 - } - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": true, - "authorizationOptions": { - "partialAuthIndicator": true, - "ignoreAvsResult": true, - "ignoreCvResult": true - } - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "entryMode": "keyed", - "terminalCapability": 2 - }, - "paymentInformation": { - "card": { - "number": 4111111111111111, - "securityCode": 123, - "expirationMonth": 12, - "expirationYear": 2031 - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example37": { - "summary": "Sale Using EMV Technology with Contact Read with Visa Platform Connect", - "sample-name": "Sale Using EMV Technology with Contact Read with Visa Platform Connect", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail", - "authorizationOptions": { - "partialAuthIndicator": true - } - }, - "pointOfSaleInformation": { - "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", - "cardPresent": "Y", - "catLevel": 1, - "emv": { - "cardSequenceNumber": 1, - "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" - }, - "entryMode": "contact", - "terminalCapability": 4 - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example38": { - "summary": "Sale Using EMV Technology with Contactless Read with Visa Platform Connect", - "sample-name": "Sale Using EMV Technology with Contactless Read with Visa Platform Connect", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail", - "authorizationOptions": { - "partialAuthIndicator": true - } - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", - "cardPresent": "Y", - "catLevel": 2, - "entryMode": "contactless", - "emv": { - "cardSequenceNumber": 1, - "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" - }, - "terminalCapability": 5 - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example39": { - "summary": "Authorization Using Bluefin PCI P2PE with Visa Platform Connect", - "sample-name": "Authorization Using Bluefin PCI P2PE with Visa Platform Connect", - "value": { - "clientReferenceInformation": { - "code": "demomerchant" - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "catLevel": 1, - "entryMode": "keyed", - "terminalCapability": 2 - }, - "processingInformation": { - "commerceIndicator": "retail", - "authorizationOptions": { - "partialAuthIndicator": true, - "ignoreAvsResult": true, - "ignoreCvResult": true - } - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "Deo", - "address1": "201 S. Division St.", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "firstName": "John", - "phoneNumber": 999999999, - "district": "MI", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": 2050, - "expirationMonth": 12 - }, - "fluidData": { - "descriptor": "Ymx1ZWZpbg==", - "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example40": { - "summary": "Restaurant Authorization", - "sample-name": "Restaurant Authorization", - "value": { - "clientReferenceInformation": { - "code": "demomerchant", - "partner": { - "thirdPartyCertificationNumber": 123456789012 - } - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?", - "cardPresent": "Y", - "entryMode": "swiped", - "terminalCapability": 2 - }, - "processingInformation": { - "commerceIndicator": "retail", - "authorizationOptions": { - "partialAuthIndicator": true - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example41": { - "summary": "Sale Using EMV Technology with a Contactless", - "sample-name": "Sale Using EMV Technology with a Contactless", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", - "cardPresent": "Y", - "catLevel": 2, - "entryMode": "contactless", - "emv": { - "cardSequenceNumber": 999 - }, - "terminalCapability": 2 - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example42": { - "summary": "Sale Using EMV Technology with Contact Read (One) for Card Present Enabled Acquirer", - "sample-name": "Sale Using EMV Technology with Contact Read (One) for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "pointOfSaleInformation": { - "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", - "cardPresent": "Y", - "catLevel": 1, - "emv": { - "cardSequenceNumber": 0 - }, - "entryMode": "contact", - "terminalCapability": 1 - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example43": { - "summary": "Swiped", - "sample-name": "Swiped", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", - "cardPresent": "Y", - "entryMode": "swiped", - "terminalCapability": 2 - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example44": { - "summary": "Sale Using Swiped Track Data for Card Present Enabled Acquirer", - "sample-name": "Sale Using Swiped Track Data for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": true - }, - "pointOfSaleInformation": { - "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", - "cardPresent": "Y", - "entryMode": "swiped", - "terminalCapability": 2 - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example45": { - "summary": "Sale Using Keyed Data for Card Present Enabled Acquirer", - "sample-name": "Sale Using Keyed Data for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": 123456 - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": true - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "entryMode": "keyed", - "terminalCapability": 2 - }, - "paymentInformation": { - "card": { - "number": 4111111111111111, - "securityCode": 123, - "expirationMonth": 12, - "expirationYear": 2031 - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example46": { - "summary": "American Express Direct - EMV with Contact Read", - "sample-name": "American Express Direct - EMV with Contact Read", - "value": { - "clientReferenceInformation": { - "code": 123456, - "partner": { - "originalTransactionId": "510be4aef90711e6acbc7d88388d803d" - } - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "pointOfSaleInformation": { - "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", - "cardPresent": "Y", - "catLevel": 1, - "emv": { - "cardSequenceNumber": 1, - "cardholderVerificationMethodUsed": 2, - "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" - }, - "entryMode": "contact", - "terminalCapability": 4, - "encryptedKeySerialNumber": "01043191", - "cardholderVerificationMethod": [ - "pin", - "signature" - ], - "terminalInputCapability": [ - "contact", - "contactless", - "keyed", - "swiped" - ], - "terminalCardCaptureCapability": 1, - "deviceId": "123lkjdIOBK34981slviLI39bj" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example47": { - "summary": "Sale Using EMV Technology with Contact Read (Two) for Card Present Enabled Acquirer", - "sample-name": "Sale Using EMV Technology with Contact Read (Two) for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": 123456, - "partner": { - "originalTransactionId": "510be4aef90711e6acbc7d88388d803d" - } - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": true - }, - "pointOfSaleInformation": { - "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", - "cardPresent": "Y", - "catLevel": 1, - "emv": { - "cardSequenceNumber": 1, - "cardholderVerificationMethodUsed": 2, - "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" - }, - "entryMode": "contact", - "terminalCapability": 4, - "encryptedKeySerialNumber": "01043191", - "cardholderVerificationMethod": [ - "pin", - "signature" - ], - "terminalInputCapability": [ - "contact", - "contactless", - "keyed", - "swiped" - ], - "terminalCardCaptureCapability": 1, - "deviceId": "123lkjdIOBK34981slviLI39bj" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example48": { - "summary": "Sale Using EMV Technology with Contactless Read for Card Present Enabled Acquirer", - "sample-name": "Sale Using EMV Technology with Contactless Read for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": 123456, - "partner": { - "originalTransactionId": "510be4aef90711e6acbc7d88388d803d" - } - }, - "processingInformation": { - "commerceIndicator": "retail", - "capture": true - }, - "pointOfSaleInformation": { - "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", - "cardPresent": "Y", - "catLevel": 1, - "emv": { - "cardSequenceNumber": 1, - "cardholderVerificationMethodUsed": 2, - "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" - }, - "entryMode": "contactless", - "terminalCapability": 5, - "encryptedKeySerialNumber": "01043191", - "cardholderVerificationMethod": [ - "pin", - "signature" - ], - "terminalInputCapability": [ - "contact", - "contactless", - "keyed", - "swiped" - ], - "terminalCardCaptureCapability": 1, - "deviceId": "123lkjdIOBK34981slviLI39bj" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example49": { - "summary": "Authorization Using Bluefin PCI P2PE for Card Present Enabled Acquirer", - "sample-name": "Authorization Using Bluefin PCI P2PE for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": "demomerchant" - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "catLevel": 1, - "entryMode": "keyed", - "terminalCapability": 2 - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "Deo", - "address1": "201 S. Division St.", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "firstName": "John", - "phoneNumber": 999999999, - "district": "MI", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": 2050, - "expirationMonth": 12 - }, - "fluidData": { - "descriptor": "Ymx1ZWZpbg==", - "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - }, - "example50": { - "summary": "Authorization with Instrument Identifier Token Id", - "sample-name": "Authorization with Instrument Identifier Token Id", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "commerceIndicator": "internet" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "John", - "lastName": "Deo", - "phoneNumber": "9321499232", - "address1": "900 Metro Center Blvd", - "postalCode": "48104-2201", - "locality": "Foster City", - "administrativeArea": "CA", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "200", - "currency": "usd" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "expirationMonth": "03", - "type": "001" - }, - "instrumentIdentifier": { - "id": "7010000000016241111" - } - } - }, - "parentTag": "Authorization with Tokenization" - }, - "example51": { - "summary": "Authorization with Legacy Token", - "sample-name": "Authorization with Legacy Token", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "paymentInformation": { - "legacyToken": { - "id": "7500BB199B4270EFE05340588D0AFCAD" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "22", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - }, - "parentTag": "Authorization with Tokenization" - } - } - } - }, - "/pts/v2/payments/{id}": { - "patch": { - "summary": "Increment an Authorization", - "description": "Use this service to authorize additional charges in a lodging or autorental transaction. Include the ID returned from the original authorization in the PATCH request to add additional charges to that authorization.\n", - "tags": [ - "payments" - ], - "operationId": "incrementAuth", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "The ID returned from the original authorization request.", - "required": true, - "type": "string" - }, - { - "name": "incrementAuthRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "storedCredentialUsed": { - "type": "boolean", - "description": "Indicates to an issuing bank whether a merchant-initiated transaction came from a card that was already stored on file.\n\nPossible values:\n- **true** means the merchant-initiated transaction came from a card that was already stored on file.\n- **false** means the merchant-initiated transaction came from a card that was not stored on file.\n" - } - } - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "additionalAmount": { - "type": "string", - "maxLength": 19, - "description": "Additional charges that have to be authorized against a lodging or auto-rental order.\nThis value cannot be negative. You can include a decimal point (.), but no other special characters.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "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" - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "maxLength": 2, - "description": "Duration for which the vehicle was rented or lodge/hotel was booked.\n" - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "storedCredentialUsed": true - } - } - }, - "orderInformation": { - "amountDetails": { - "additionalAmount": "22.49", - "currency": "USD" - } - }, - "merchantInformation": { - "transactionLocalDateTime": 20191002080000 - }, - "travelInformation": { - "duration": "4" - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2IncrementalAuthorizationPatch201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - AUTHORIZED\n - AUTHORIZED_PENDING_REVIEW\n - DECLINED\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - AVS_FAILED\n - CONTACT_PROCESSOR\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - INSUFFICIENT_FUND\n - STOLEN_LOST_CARD\n - ISSUER_UNAVAILABLE\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - EXCEEDS_CREDIT_LIMIT\n - INVALID_CVN\n - BLACKLISTED_CUSTOMER\n - SUSPENDED_ACCOUNT\n - PAYMENT_REFUSED\n - CV_FAILED\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - INVALID_MERCHANT_CONFIGURATION\n - DECISION_PROFILE_REJECT\n - SCORE_EXCEEDS_THRESHOLD\n - CONSUMER_AUTHENTICATION_REQUIRED\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\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" - } - } - } - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - }, - "transactionId": { - "type": "string", - "maxLength": 50, - "description": "Network transaction identifier (TID). You can use this value to identify a specific transaction when you are\ndiscussing the transaction with your processor. Not all processors provide this value.\n\nReturned by the authorization service.\n\n#### PIN debit\nTransaction identifier generated by the processor.\n\nReturned by PIN debit credit.\n\n#### GPX\nProcessor transaction ID.\n\n#### Cielo\nFor Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.\n\n#### Comercio Latino\nFor Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.\n\n#### CyberSource through VisaNet and GPN\nFor details about this value for CyberSource through VisaNet and GPN, see \"Network Transaction Identifiers\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Moneris\nThis value identifies the transaction on a host system. It contains the following information:\n- Terminal used to process the transaction\n- Shift during which the transaction took place\n- Batch number\n- Transaction number within the batch\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\n**Example** For the value\n66012345001069003:\n- Terminal ID = 66012345\n- Shift number = 001\n- Batch number = 069\n- Transaction number = 003\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "systemTraceAuditNumber": { - "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" - }, - "responseDetails": { - "type": "string", - "maxLength": 255, - "description": "This field might contain information about a decline. This field is supported only for **CyberSource through\nVisaNet**.\n" - }, - "merchantAdvice": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 2, - "description": "Reason the recurring payment transaction was declined. For some processors, this field is used only for\nMastercard. For other processors, this field is used for Visa and Mastercard. And for other processors, this\nfield is not implemented.\n\nPossible values:\n\n - `00`: Response not provided.\n - `01`: New account information is available. Obtain the new information.\n - `02`: Try again later.\n - `03`: Do not try again. Obtain another type of payment from the customer.\n - `04`: Problem with a token or a partial shipment indicator.\n - `21`: Recurring payment cancellation service.\n - `99`: An unknown value was returned from the processor.\n\nFor processor-specific information, see the `auth_merchant_advice_code` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 4, - "description": "Raw merchant advice code sent directly from the processor. This field is used only for Mastercard.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR7\n- Position: 96-99\n- Field: Response Data-Merchant Advice Code\n\n\nFor processor-specific information, see the `auth_merchant_advice_code_raw` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "nameMatch": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThe field contains will contain the Account Name Request Result for zero amount Authorization request. Valid values are:\n\n00 = Name Match Performed\n01 = Name Match not Performed\n02 = Name Match not supported\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "accountFeatures": { - "type": "object", - "properties": { - "category": { - "type": "string", - "maxLength": 7, - "description": "#### GPX\nMastercard product ID associated with the primary account number (PAN).\nReturned by authorization service.\n\n#### CyberSource through VisaNet\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the [Visa\nRequest & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### GPN\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the\n[Visa Request & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### Worldpay VAP\n**Important** Before using this field on Worldpay VAP,\nyou must contact CyberSource Customer Support to have\nyour account configured for this feature.\n\nType of card used in the transaction. The only possible value is:\n- `PREPAID`: Prepaid Card\n\nData Length: String (7)\n\n#### RBS WorldPay Atlanta\nType of card used in the transaction. Possible values:\n- `B`: Business Card\n- `O`: Noncommercial Card\n- `R`: Corporate Card\n- `S`: Purchase Card\n- `Blank`: Purchase card not supported\n\nData Length: String (1)\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "totalAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount you requested for the payment or capture.\n\nThis value is returned for partial authorizations.\nThis field is also returned on incremental authorizations will contain the aggregated amount from the original authorizations and all the incremental authorizations.\n" - }, - "authorizedAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount that was authorized.\n\nReturned by authorization service.\n\n#### PIN debit\nAmount of the purchase.\n\nReturned by PIN debit purchase.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in Merchant Descriptors Using the SCMP API.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/payments/4963015972176007901546", - "method": "GET" - } - }, - "id": "4963015972176007901546", - "submitTimeUtc": "2017-06-01T071957Z", - "status": "200", - "reconciliationId": "39570726X3E1LBQR", - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "authorizedAmount": "22.49", - "currency": "USD" - } - }, - "processorInformation": { - "approvalCode": "888888", - "responseCode": "100" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "ptsV2IncrementalAuthorizationPatch400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - CARD_TYPE_NOT_ACCEPTED\n - INVALID_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\n - INVALID_PAYMENT_ID\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2IncrementalAuthorizationPatch502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Incremental Authorization", - "sample-name": "Incremental Authorization", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "authorizationOptions": { - "initiator": { - "storedCredentialUsed": true - } - } - }, - "orderInformation": { - "amountDetails": { - "additionalAmount": "22.49", - "currency": "USD" - } - }, - "merchantInformation": { - "transactionLocalDateTime": 20191002080000 - }, - "travelInformation": { - "duration": "4" - } - } - } - } - } - }, - "/pts/v2/payments/{id}/reversals": { - "post": { - "summary": "Process an Authorization Reversal", - "description": "Include the payment ID in the POST request to reverse the payment amount.", - "tags": [ - "reversal" - ], - "operationId": "authReversal", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "The payment ID returned from a previous payment request.", - "required": true, - "type": "string" - }, - { - "name": "authReversalRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "reversalInformation": { - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "reason": { - "type": "string", - "description": "Reason for the authorization reversal. Possible value:\n\n - `34`: Suspected fraud\n\nThis field is ignored for processors that do not support this value.\n\nReturned by authorization reversal.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "issuer": { - "type": "object", - "properties": { - "discretionaryData": { - "type": "string", - "maxLength": 255, - "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "TC50171_3", - "transactionId": "code" - }, - "reversalInformation": { - "reason": "testing", - "amountDetails": { - "totalAmount": "102.21" - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2PaymentsReversalsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - REVERSED\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "reversalAmountDetails": { - "type": "object", - "properties": { - "reversedAmount": { - "type": "string", - "maxLength": 15, - "description": "Total reversed amount.\n\nReturned by authorization reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount of the original transaction.\n\nReturned by authorization reversal and void.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "transactionId": { - "type": "string", - "maxLength": 18, - "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "responseCategoryCode": { - "type": "string", - "maxLength": 36, - "description": "Processor-defined response category code. The associated detail error code is in the `processorInformation.responseCode` or `issuerInformation.responseCode`\nfield of the service you requested.\n\nThis field is supported only for:\n\n - Japanese issuers\n - Domestic transactions in Japan\n - Comercio Latino\u2014processor transaction ID required for troubleshooting\n\n#### Maximum length for processors\n\n - Comercio Latino: 36\n - All other processors: 3\n" - }, - "forwardedAcquirerCode": { - "type": "string", - "maxLength": 32, - "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" - }, - "masterCardServiceCode": { - "type": "string", - "maxLength": 2, - "description": "Mastercard service that was used for the transaction. Mastercard provides this value to CyberSource.\n\nPossible value:\n - 53: Mastercard card-on-file token service\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 133-134\n- Field: Mastercard Merchant on-behalf service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" - }, - "masterCardServiceReplyCode": { - "type": "string", - "maxLength": 1, - "description": "Result of the Mastercard card-on-file token service. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `C`: Service completed successfully.\n - `F`: One of the following:\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 81 for an authorization or\n authorization reversal.\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 01 for a tokenized request.\n - Token requestor ID is missing or formatted incorrectly.\n - `I`: One of the following:\n - Invalid token requestor ID.\n - Suspended or deactivated token.\n - Invalid token (not in mapping table).\n - `T`: Invalid combination of token requestor ID and token.\n - `U`: Expired token.\n - `W`: Primary account number (PAN) listed in electronic warning bulletin.\n\n**Note** This field is returned only for **CyberSource through VisaNet**.\n" - } - } - }, - "issuerInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 6, - "description": "Additional authorization code that must be printed on the receipt when returned by the processor.\n\nThis value is generated by the processor and is returned only for a successful transaction.\n\nThis reply field is supported only for these processors:\n- FDC Nashville Global\n- SIX\n" - } - } - }, - "authorizationInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "The authorization code returned by the processor." - }, - "reasonCode": { - "type": "string", - "maxLength": 50, - "description": "Reply flag for the original transaction." - }, - "reversalSubmitted": { - "type": "string", - "maxLength": 1, - "description": "Flag indicating whether a full authorization reversal was successfully submitted.\n\nPossible values:\n- Y: The authorization reversal was successfully submitted.\n- N: The authorization reversal was not successfully submitted. You must send a credit request for a refund.\n\nThis field is supported only for **FDC Nashville Global**.\n" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/reversals/4963015523026180001545", - "method": "GET" - } - }, - "id": "4963015523026180001545", - "submitTimeUtc": "2017-06-01T071912Z", - "status": "200", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "processorInformation": { - "responseCode": "100" - }, - "reversalAmountDetails": { - "reversedAmount": "102.21", - "currency": "USD" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "ptsV2PaymentsReversalsPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - AUTH_ALREADY_REVERSED\n - TRANSACTION_ALREADY_SETTLED\n - INVALID_AMOUNT\n - MISSING_AUTH\n - TRANSACTION_ALREADY_REVERSED_OR_SETTLED\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2PaymentsReversalsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Process an Authorization Reversal", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "reversalInformation": { - "reason": "testing", - "amountDetails": { - "totalAmount": "102.21" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - }, - "example1": { - "summary": "Service Fees Authorization Reversal", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "reversalInformation": { - "reason": "34", - "amountDetails": { - "totalAmount": "2325.00", - "serviceFeeAmount": "30.0" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example14" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/reversals/": { - "post": { - "summary": "Timeout Reversal", - "description": "This is to reverse a previous payment that merchant does not receive a reply(Mostly due to Timeout). To use this feature/API, make sure to pass unique value to field - clientReferenceInformation -> transactionId in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call and use same transactionId in this API request payload to reverse the payment.", - "tags": [ - "reversal" - ], - "operationId": "mitReversal", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", - "isClientSideApi": true - }, - "parameters": [ - { - "name": "mitReversalRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "reversalInformation": { - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "reason": { - "type": "string", - "description": "Reason for the authorization reversal. Possible value:\n\n - `34`: Suspected fraud\n\nThis field is ignored for processors that do not support this value.\n\nReturned by authorization reversal.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "issuer": { - "type": "object", - "properties": { - "discretionaryData": { - "type": "string", - "maxLength": 255, - "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "transactionId": "" - }, - "reversalInformation": { - "reason": "testing", - "amountDetails": { - "totalAmount": "102.21" - } - } - } - } - } - ], - "x-example": { - "example0": { - "summary": "Timeout Reversal", - "value": { - "clientReferenceInformation": { - "transactionId": "" - }, - "reversalInformation": { - "reason": "testing", - "amountDetails": { - "totalAmount": "102.21" - } - } - } - } - }, - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2ReversalsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - REVERSED\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "reversalAmountDetails": { - "type": "object", - "properties": { - "reversedAmount": { - "type": "string", - "maxLength": 15, - "description": "Total reversed amount.\n\nReturned by authorization reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount of the original transaction.\n\nReturned by authorization reversal and void.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "transactionId": { - "type": "string", - "maxLength": 18, - "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "responseCategoryCode": { - "type": "string", - "maxLength": 36, - "description": "Processor-defined response category code. The associated detail error code is in the `processorInformation.responseCode` or `issuerInformation.responseCode`\nfield of the service you requested.\n\nThis field is supported only for:\n\n - Japanese issuers\n - Domestic transactions in Japan\n - Comercio Latino\u2014processor transaction ID required for troubleshooting\n\n#### Maximum length for processors\n\n - Comercio Latino: 36\n - All other processors: 3\n" - }, - "forwardedAcquirerCode": { - "type": "string", - "maxLength": 32, - "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" - }, - "masterCardServiceCode": { - "type": "string", - "maxLength": 2, - "description": "Mastercard service that was used for the transaction. Mastercard provides this value to CyberSource.\n\nPossible value:\n - 53: Mastercard card-on-file token service\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 133-134\n- Field: Mastercard Merchant on-behalf service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" - }, - "masterCardServiceReplyCode": { - "type": "string", - "maxLength": 1, - "description": "Result of the Mastercard card-on-file token service. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `C`: Service completed successfully.\n - `F`: One of the following:\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 81 for an authorization or\n authorization reversal.\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 01 for a tokenized request.\n - Token requestor ID is missing or formatted incorrectly.\n - `I`: One of the following:\n - Invalid token requestor ID.\n - Suspended or deactivated token.\n - Invalid token (not in mapping table).\n - `T`: Invalid combination of token requestor ID and token.\n - `U`: Expired token.\n - `W`: Primary account number (PAN) listed in electronic warning bulletin.\n\n**Note** This field is returned only for **CyberSource through VisaNet**.\n" - } - } - }, - "issuerInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 6, - "description": "Additional authorization code that must be printed on the receipt when returned by the processor.\n\nThis value is generated by the processor and is returned only for a successful transaction.\n\nThis reply field is supported only for these processors:\n- FDC Nashville Global\n- SIX\n" - } - } - }, - "authorizationInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "The authorization code returned by the processor." - }, - "reasonCode": { - "type": "string", - "maxLength": 50, - "description": "Reply flag for the original transaction." - }, - "reversalSubmitted": { - "type": "string", - "maxLength": 1, - "description": "Flag indicating whether a full authorization reversal was successfully submitted.\n\nPossible values:\n- Y: The authorization reversal was successfully submitted.\n- N: The authorization reversal was not successfully submitted. You must send a credit request for a refund.\n\nThis field is supported only for **FDC Nashville Global**.\n" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/reversals/4963015523026180001545", - "method": "GET" - } - }, - "id": "4963015523026180001545", - "submitTimeUtc": "2017-06-01T071912Z", - "status": "200", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "processorInformation": { - "responseCode": "100" - }, - "reversalAmountDetails": { - "reversedAmount": "102.21", - "currency": "USD" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2ReversalsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - AUTH_ALREADY_REVERSED\n - TRANSACTION_ALREADY_SETTLED\n - INVALID_AMOUNT\n - MISSING_AUTH\n - TRANSACTION_ALREADY_REVERSED_OR_SETTLED\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2ReversalsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/pts/v2/payments/{id}/captures": { - "post": { - "summary": "Capture a Payment", - "description": "Include the payment ID in the POST request to capture the payment amount.", - "tags": [ - "capture" - ], - "operationId": "capturePayment", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "capturePaymentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "purchaseLevel": { - "type": "string", - "maxLength": 1, - "description": "Set this field to 3 to indicate that the request includes Level III data." - }, - "industryDataType": { - "type": "string", - "maxLength": 20, - "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "issuer": { - "type": "object", - "properties": { - "discretionaryData": { - "type": "string", - "maxLength": 255, - "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "authorizationOptions": { - "type": "object", - "properties": { - "authType": { - "type": "string", - "maxLength": 15, - "description": "Authorization type. Possible values:\n\n - `AUTOCAPTURE`: automatic capture.\n - `STANDARDCAPTURE`: standard capture.\n - `VERBAL`: forced capture. Include it in the payment request for a forced capture. Include it in the capture request for a verbal payment.\n\n#### Asia, Middle East, and Africa Gateway; Cielo; Comercio Latino; and CyberSource Latin American Processing\nSet this field to `AUTOCAPTURE` and include it in a bundled request to indicate that you are requesting an automatic capture. If your account is configured to enable automatic captures, set this field to `STANDARDCAPTURE` and include it in a standard authorization or bundled request to indicate that you are overriding an automatic capture. For more information, see the `auth_type` field description in [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Forced Capture\nSet this field to `VERBAL` and include it in the authorization request to indicate that you are performing a forced capture; therefore, you receive the authorization code outside the CyberSource system.\n\n#### Verbal Authorization\nSet this field to `VERBAL` and include it in the capture request to indicate that the request is for a verbal authorization. For more information, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" - }, - "verbalAuthCode": { - "type": "string", - "maxLength": 7, - "description": "Authorization code.\n\n#### Forced Capture\nUse this field to send the authorization code you received from a payment that you authorized\noutside the CyberSource system.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit purchase.\n\n#### Verbal Authorization\nUse this field in CAPTURE API to send the verbally received authorization code.\n\nFor processor-specific information, see the `auth_code` field description in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" - }, - "verbalAuthTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Transaction ID (TID).\n\n#### FDMS South\nThis field is required for verbal authorizations and forced captures with the American Express card type to comply\nwith the CAPN requirements:\n- Forced capture: Obtain the value for this field from the authorization response.\n- Verbal authorization: You cannot obtain a value for this field so CyberSource uses the default value of `000000000000000` (15\nzeros).\n" - } - } - }, - "captureOptions": { - "type": "object", - "properties": { - "captureSequenceNumber": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Capture number when requesting multiple partial captures for one authorization.\nUsed along with `totalCaptureCount` to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber_ = 2`, and\n - `totalCaptureCount = 5`\n" - }, - "totalCaptureCount": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Total number of captures when requesting multiple partial captures for one payment.\nUsed along with `captureSequenceNumber` field to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber = 2`, and\n - `totalCaptureCount = 5`\n" - } - } - }, - "loanOptions": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 20, - "description": "Type of loan based on an agreement between you and the issuer.\nExamples: AGROCUSTEIO, AGRO-INVEST, BNDES-Type1, CBN, FINAME.\nThis field is supported only for these kinds of payments:\n- BNDES transactions on CyberSource through VisaNet.\n- Installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nSee \"\"Installment Payments on CyberSource through VisaNet,\"\" in the SCMP/SO guide\n\nFor BNDES transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR2, Position: 27-46, Field: Loan Type\n\nFor installment payments with Mastercard in Brazil, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR4, Position: 5-24,Field: Financing Type\n" - }, - "assetType": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a loan is for a recoverable item or a non-recoverable item.\nPossible values:\n- `N`: non-recoverable item\n- `R`: recoverable item\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n Record: CP07 TCR2, Position: 26, Field: Asset Indicator\n" - } - } - }, - "payByPointsIndicator": { - "type": "boolean", - "description": "Flag that indicates if the transaction is pay by points transaction\ntrue: Transaction uses loyalty points\nfalse: Transaction does not use loyalty points\nDefault: false\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "card": { - "type": "object", - "properties": { - "sourceAccountType": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" - }, - "sourceAccountTypeDetails": { - "type": "string", - "maxLength": 4, - "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n" - }, - "nationalTaxIncluded": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" - }, - "taxAppliedLevel": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 3, - "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" - }, - "freightAmount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "foreignAmount": { - "type": "string", - "maxLength": 15, - "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "description": "Set this field to the converted amount that was returned by the DCC provider.\n" - }, - "exchangeRate": { - "type": "string", - "maxLength": 13, - "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" - }, - "exchangeRateTimeStamp": { - "type": "string", - "maxLength": 14, - "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" - }, - "amexAdditionalAmounts": { - "type": "array", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "amount": { - "type": "string", - "maxLength": 12, - "description": "Additional amount. This field is supported only for **American Express Direct**.\n" - } - } - } - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - }, - "originalCurrency": { - "type": "string", - "maxLength": 15, - "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "cashbackAmount": { - "type": "string", - "maxLength": 13, - "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "company": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "address1": { - "type": "string", - "maxLength": 40, - "description": "First line in the street address of the company purchasing the product." - }, - "address2": { - "type": "string", - "maxLength": 40, - "description": "Additional address information for the company purchasing the product." - }, - "locality": { - "type": "string", - "maxLength": 30, - "description": "City in the address of the company purchasing the product." - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - } - } - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "unitOfMeasure": { - "type": "string", - "maxLength": 12, - "description": "Unit of measure, or unit of measure code, for the item.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - }, - "taxRate": { - "type": "string", - "maxLength": 7, - "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" - }, - "taxStatusIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "amountIncludesTax": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "typeOfSupply": { - "type": "string", - "maxLength": 2, - "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 13, - "description": "Discount applied to the item." - }, - "discountApplied": { - "type": "boolean", - "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "discountRate": { - "type": "string", - "maxLength": 6, - "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 23, - "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "fulfillmentType": { - "type": "string", - "description": "Information about the product code used for the line item.\nPossible values:\n- `E`: The product code is `electronic_software`.\n- `P`: The product code is not `electronic_software`.\n\nFor details, see the `fulfillmentType` field description in [Business Center Reporting User Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/reporting_and_reconciliation/Reporting_User/html/)\n" - }, - "weight": { - "type": "string", - "maxLength": 9, - "description": "Weight of the item.\n\nFor details, see `weight_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "weightIdentifier": { - "type": "string", - "maxLength": 1, - "description": "Type of weight.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\n\nFor details, see `weight_identifier` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "weightUnit": { - "type": "string", - "maxLength": 2, - "description": "Code that specifies the unit of measurement for the weight amount. For example, `OZ` specifies ounce and `LB` specifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nFor details, see `weight_unit_measurement` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "referenceDataCode": { - "type": "string", - "maxLength": 2, - "description": "Code that identifies the value of the corresponding `orderInformation.lineItems[].referenceDataNumber` field.\n\nPossible values:\n- AN: Client-defined asset code\n- MG: Manufacturer's part number\n- PO: Purchase order number\n- SK: Supplier stock keeping unit number\n- UP: Universal product code\n- VC: Supplier catalog number\n- VP: Vendor part number\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n\nFor details, see `reference_data_#_code` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "referenceDataNumber": { - "type": "string", - "maxLength": 30, - "description": "Reference number.\n\nThe meaning of this value is identified by the value of the corresponding `referenceDataCode` field.\nSee Numbered Elements.\n\nThe maximum length for this field depends on the value of the corresponding `referenceDataCode` field:\n- When the code is `PO`, the maximum length for the reference number is 22.\n- When the code is `VC`, the maximum length for the reference number is 20.\n- For all other codes, the maximum length for the reference number is 30.\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" - }, - "productDescription": { - "type": "string", - "description": "Brief description of item." - }, - "giftCardCurrency": { - "type": "integer", - "maxLength": 3, - "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "shippingDestinationTypes": { - "type": "string", - "maxLength": 50, - "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" - }, - "gift": { - "type": "boolean", - "description": "This field is only used in DM service.\n\nDetermines whether to assign risk to the order if the billing and shipping addresses specify different cities,\nstates, or countries. This field can contain one of the following values:\n- true: Orders are assigned only slight additional risk if billing and shipping addresses are different.\n- false: Orders are assigned higher additional risk if billing and shipping addresses are different.\n" - }, - "passenger": { - "type": "object", - "description": "Contains travel-related passenger details used by DM service only.", - "properties": { - "type": { - "type": "string", - "maxLength": 32, - "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" - }, - "status": { - "type": "string", - "maxLength": 32, - "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" - }, - "phone": { - "type": "string", - "maxLength": 15, - "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's first name." - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's last name." - }, - "id": { - "type": "string", - "maxLength": 40, - "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." - }, - "nationality": { - "type": "string", - "maxLength": 2, - "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." - } - } - } - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "purchaseOrderNumber": { - "type": "string", - "maxLength": 25, - "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseContactName": { - "type": "string", - "maxLength": 36, - "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - }, - "vatInvoiceReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 4, - "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "transactionAdviceAddendum": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "maxLength": 40, - "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" - } - } - } - } - } - }, - "shippingDetails": { - "type": "object", - "properties": { - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "userAgent": { - "type": "string", - "maxLength": 40, - "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "alternateName": { - "type": "string", - "maxLength": 13, - "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" - }, - "contact": { - "type": "string", - "maxLength": 14, - "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "administrativeArea": { - "type": "string", - "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "phone": { - "type": "string", - "maxLength": 13, - "description": "Merchant phone as contact information for CNP transactions\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - }, - "countryOfOrigin": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" - } - } - }, - "cardAcceptorReferenceNumber": { - "type": "string", - "maxLength": 25, - "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "categoryCode": { - "type": "integer", - "maximum": 9999, - "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "serviceFeeDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 22, - "description": "Name of the service provider that is collecting the service fee. The service provider name must consist of\n3, 7, or 12 characters followed by an asterisk (*). This value must also include the words \u201cService Fee.\u201d\n\nWhen you include more than one consecutive space, extra spaces are removed. Use one of the following formats\nfor this value:\n- <3-character name>*Service Fee\n- <7-character name>*Service Fee\n- <12-character name>*Service Fee\n\nWhen payments are made in installments, this value must also include installment information such as\n\u201c1 of 5\u201d or \u201c3 of 7.\u201d For installment payments, use one of the following formats for this value:\n- <3-character name>*Service Fee* of \n- <7-character name>*Service Fee* of \n- <12-character name>*Service Fee* of \n\nwhere is the payment number and is the total number of payments.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource\naccount.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" - }, - "contact": { - "type": "string", - "maxLength": 11, - "description": "Contact information for the service provider that is collecting the service fee. when you include more than one\nconsecutive space, extra spaces are removed.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" - }, - "state": { - "type": "string", - "maxLength": 20, - "description": "State or territory in which the service provider is located.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" - } - } - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "aggregatorInformation": { - "type": "object", - "properties": { - "aggregatorId": { - "type": "string", - "maxLength": 20, - "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "name": { - "type": "string", - "maxLength": 37, - "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "subMerchant": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 37, - "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" - }, - "address1": { - "type": "string", - "maxLength": 38, - "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "locality": { - "type": "string", - "maxLength": 21, - "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "email": { - "type": "string", - "maxLength": 40, - "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" - }, - "id": { - "type": "string", - "maxLength": 20, - "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - }, - "fallback": { - "type": "boolean", - "maxLength": 5, - "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" - } - } - }, - "amexCapnData": { - "type": "string", - "maxLength": 15, - "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "installmentInformation": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 12, - "description": "Amount for the current installment payment.\n\nThis field is supported only for CyberSource through VisaNet.\n\nFor details, see `installment_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "frequency": { - "type": "string", - "maxLength": 1, - "description": "Frequency of the installment payments. When you do not include this field in a request for a\nCrediario installment payment, CyberSource sends a space character to the processor.\n\nFor details, see `installment_frequency` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for CyberSource through VisaNet. Possible values:\n- `B`: Biweekly\n- `M`: Monthly\n- `W`: Weekly\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR9\n- Position: 41\n- Field: Installment Frequency\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "planType": { - "type": "string", - "maxLength": 1, - "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" - }, - "sequence": { - "type": "integer", - "maximum": 99, - "description": "Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nWhen you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor.\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 38-40\n- Field: Installment Payment Number\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 12, - "description": "Total amount of the loan that is being paid in installments. This field is supported only for CyberSource\nthrough VisaNet.\n\nFor details, see \"Installment Payments\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "totalCount": { - "type": "integer", - "maximum": 99, - "description": "Total number of installments when making payments in installments.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\n\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### American Express Direct, Cielo, and Comercio Latino\nThis value is the total number of installments you approved.\n\n#### CyberSource Latin American Processing in Brazil\nThis value is the total number of installments that you approved. The default is 1.\n\n#### All Other Processors\nThis value is used along with _sequence_ to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as _sequence_ = 2 and _totalCount_ = 5.\n\n#### CyberSource through VisaNet\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 23-25\n- Field: Number of Installments\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 7-8\n- Field: Number of Installments\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR1\n- Position: 7-8\n- Field: Number of Installments\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR5\n- Position: 20-22\n- Field: Installment Total Count\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" - }, - "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.\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" - }, - "firstInstallmentAmount": { - "type": "string", - "maxLength": 13, - "description": "Amount of the first installment payment. The issuer provides this value when the first installment payment is successful.\nThis field is supported for Mastercard installment payments on CyberSource through VisaNet in all countries except Brazil,Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 23-34\n- Field: Amount of Each Installment\n" - }, - "invoiceData": { - "type": "string", - "maxLength": 20, - "description": "Invoice information that you want to provide to the issuer. This value is similar to a tracking number and is\nthe same for all installment payments for one purchase.\n\nThis field is supported only for installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 51-70\n- Field: Purchase Identification\n" - }, - "paymentType": { - "type": "string", - "maxLength": 1, - "description": "Payment plan for the installments.\n\nPossible values:\n- 0 (default): Regular installment. This value is not allowed for airline transactions.\n- 1: Installment payment with down payment.\n- 2: Installment payment without down payment. This value is supported only for airline transactions.\n- 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions.\n- 4: Down payment only; regular installment payment will follow.\n- 5: Boarding fee only. This value is supported only for airline transactions.\n\nThis field is supported only for installment payments with Visa on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 9\n- Field: Merchant Installment Supporting Information\n" - }, - "additionalCosts": { - "type": "string", - "maxLength": 12, - "description": "Additional costs charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 128-139\n- Field: Total Other Costs\n" - }, - "additionalCostsPercentage": { - "type": "string", - "maxLength": 4, - "description": "Additional costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 140-143\n- Field: Percent of Total Other Costs\n" - }, - "amountFunded": { - "type": "string", - "maxLength": 12, - "description": "Amount funded.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 48-59\n- Field: Total Amount Funded\n" - }, - "amountRequestedPercentage": { - "type": "string", - "maxLength": 4, - "description": "Amount requested divided by the amount funded.\n\nFor example:\n- A value of 90.0 specifies 90%.\n- A value of 93.7 specifies 93.7%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 60-63\n- Field: Percent of Amount Requested\n" - }, - "annualFinancingCost": { - "type": "string", - "maxLength": 7, - "description": "Annual cost of financing the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 158-164\n- Field: Annual Total Cost of Financing\n" - }, - "annualInterestRate": { - "type": "string", - "maxLength": 7, - "description": "Annual interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 151-157\n- Field: Annual Interest Rate\n" - }, - "expenses": { - "type": "string", - "maxLength": 12, - "description": "Expenses charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 64-75\n- Field: Total Expenses\n" - }, - "expensesPercentage": { - "type": "string", - "maxLength": 4, - "description": "Expenses divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 76-79\n- Field: Percent of Total Expenses\n" - }, - "fees": { - "type": "string", - "maxLength": 12, - "description": "Fees charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 80-91\n- Field: Total Fees\n" - }, - "feesPercentage": { - "type": "string", - "maxLength": 4, - "description": "Fees divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 92-95\n- Field: Percent of Total Fees\n" - }, - "insurance": { - "type": "string", - "maxLength": 12, - "description": "Insurance charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 112-123\n- Field: Total Insurance\n" - }, - "insurancePercentage": { - "type": "string", - "maxLength": 4, - "description": "Insurance costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 124-127\n- Field: Percent Of Total Insurance\n" - }, - "monthlyInterestRate": { - "type": "string", - "maxLength": 7, - "description": "Monthly interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 144-150\n- Field: Monthly Interest Rate\n" - }, - "taxes": { - "type": "string", - "maxLength": 12, - "description": "Taxes collected by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 96-107\n- Field: Total Taxes\n" - }, - "taxesPercentage": { - "type": "string", - "maxLength": 4, - "description": "Taxes divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 108-111\n- Field: Percent of Total Taxes\n" - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "maxLength": 2, - "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" - }, - "agency": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 8, - "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" - }, - "name": { - "type": "string", - "maxLength": 25, - "description": "Name of travel agency that made the reservation.\n" - } - } - }, - "autoRental": { - "type": "object", - "properties": { - "noShowIndicator": { - "type": "boolean", - "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" - }, - "customerName": { - "type": "string", - "maxLength": 40, - "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" - }, - "vehicleClass": { - "type": "string", - "maxLength": 4, - "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" - }, - "distanceTravelled": { - "type": "string", - "maxLength": 5, - "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" - }, - "distanceUnit": { - "type": "string", - "maxLength": 1, - "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" - }, - "returnDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "rentalDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "maxFreeDistance": { - "type": "string", - "maxLength": 4, - "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" - }, - "insuranceIndicator": { - "type": "boolean", - "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" - }, - "programCode": { - "type": "string", - "maxLength": 2, - "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" - }, - "returnAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City where the auto was returned to the rental agency.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" - } - } - }, - "rentalAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" - }, - "address1": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "address2": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" - } - } - }, - "agreementNumber": { - "type": "string", - "maxLength": 25, - "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" - }, - "odometerReading": { - "type": "string", - "maxLength": 8, - "description": "Odometer reading at time of vehicle rental.\n" - }, - "vehicleIdentificationNumber": { - "type": "string", - "maxLength": 20, - "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" - }, - "companyId": { - "type": "string", - "maxLength": 12, - "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" - }, - "numberOfAdditionalDrivers": { - "type": "string", - "maxLength": 1, - "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" - }, - "driverAge": { - "type": "string", - "maxLength": 3, - "description": "Age of the driver renting the vehicle.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 2, - "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" - }, - "vehicleMake": { - "type": "string", - "maxLength": 10, - "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" - }, - "vehicleModel": { - "type": "string", - "maxLength": 10, - "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" - }, - "timePeriod": { - "type": "string", - "maxLength": 7, - "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" - }, - "taxDetails": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" - }, - "taxType": { - "type": "string", - "maxLength": 10, - "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" - }, - "taxSummary": { - "type": "string", - "maxLength": 12, - "description": "Summary of all tax types\n" - } - } - }, - "insuranceAmount": { - "type": "string", - "maxLength": 12, - "description": "Insurance charges.\nField is conditional and can include decimal point.\n" - }, - "oneWayDropOffAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" - }, - "adjustedAmountIndicator": { - "type": "string", - "maxLength": 1, - "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" - }, - "adjustedAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" - }, - "fuelCharges": { - "type": "string", - "maxLength": 12, - "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "weeklyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" - }, - "dailyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" - }, - "ratePerMile": { - "type": "string", - "maxLength": 12, - "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" - }, - "mileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" - }, - "extraMileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "lateFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" - }, - "towingCharge": { - "type": "string", - "maxLength": 4, - "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" - }, - "extraCharge": { - "type": "string", - "maxLength": 12, - "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" - }, - "gpsCharge": { - "type": "string", - "maxLength": 12, - "description": "Amount charged for renting a Global Positioning Service (GPS).\n" - }, - "phoneCharge": { - "type": "string", - "maxLength": 12, - "description": "Additional charges incurred for phone usage included on the total bill.\n" - }, - "parkingViolationCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" - }, - "otherCharges": { - "type": "string", - "maxLength": 12, - "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" - } - } - }, - "lodging": { - "type": "object", - "properties": { - "checkInDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "checkOutDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "room": { - "type": "array", - "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", - "items": { - "type": "object", - "properties": { - "dailyRate": { - "type": "string", - "maxLength": 8, - "description": "Daily cost of the room.\n" - }, - "numberOfNights": { - "type": "integer", - "minimum": 1, - "maximum": 9999, - "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" - } - } - } - }, - "smokingPreference": { - "type": "string", - "maxLength": 1, - "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" - }, - "numberOfRooms": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of rooms booked by the cardholder.\n" - }, - "numberOfGuests": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of guests staying in the room.\n" - }, - "roomBedType": { - "type": "string", - "maxLength": 12, - "description": "Type of room, such as queen, king, or two doubles.\n" - }, - "roomTaxType": { - "type": "string", - "maxLength": 10, - "description": "Type of tax, such as tourist or hotel.\n" - }, - "roomRateType": { - "type": "string", - "maxLength": 12, - "description": "Type of rate, such as corporate or senior citizen.\n" - }, - "guestName": { - "type": "string", - "maxLength": 40, - "description": "Name of the guest under which the room is reserved.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Your toll-free customer service phone number.\n" - }, - "corporateClientCode": { - "type": "string", - "maxLength": 17, - "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" - }, - "additionalDiscountAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of an additional coupon or discount.\n" - }, - "roomLocation": { - "type": "string", - "maxLength": 10, - "description": "Location of room, such as lake view or ocean view.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 1, - "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" - }, - "totalTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount.\n" - }, - "prepaidCost": { - "type": "string", - "maxLength": 12, - "description": "Prepaid amount, such as a deposit.\n" - }, - "foodAndBeverageCost": { - "type": "string", - "maxLength": 12, - "description": "Cost for all food and beverages.\n" - }, - "roomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax for the room.\n" - }, - "adjustmentAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" - }, - "phoneCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of telephone services.\n" - }, - "restaurantCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of restaurant purchases\n" - }, - "roomServiceCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of room service.\n" - }, - "miniBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of mini-bar purchases.\n" - }, - "laundryCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of laundry services.\n" - }, - "miscellaneousCost": { - "type": "string", - "maxLength": 12, - "description": "Miscellaneous costs.\n" - }, - "giftShopCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of gift shop purchases.\n" - }, - "movieCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of movies.\n" - }, - "healthClubCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of health club services.\n" - }, - "valetParkingCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of valet parking services.\n" - }, - "cashDisbursementCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of the cash that was disbursed plus any associated service fees\n" - }, - "nonRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of non-room purchases, such as meals and gifts.\n" - }, - "businessCenterCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of business center services.\n" - }, - "loungeBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of lounge and bar purchases.\n" - }, - "transportationCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of transportation services.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 12, - "description": "Gratuity.\n" - }, - "conferenceRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of conference room services.\n" - }, - "audioVisualCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of audio visual services.\n" - }, - "banquestCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of banquet services.\n" - }, - "nonRoomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax on non-room purchases.\n" - }, - "earlyCheckOutCost": { - "type": "string", - "maxLength": 12, - "description": "Service fee for early departure.\n" - }, - "internetAccessCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of Internet access.\n" - } - } - }, - "transit": { - "type": "object", - "properties": { - "airline": { - "type": "object", - "properties": { - "bookingReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" - }, - "carrierName": { - "type": "string", - "maxLength": 15, - "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "ticketIssuer": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 4, - "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" - }, - "name": { - "type": "string", - "maxLength": 20, - "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" - }, - "address": { - "type": "string", - "maxLength": 16, - "description": "Address of the company issuing the ticket.\n" - }, - "locality": { - "type": "string", - "maxLength": 18, - "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 18, - "description": "State in which transaction occured.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Zip code of the city in which transaction occured.\n" - }, - "country": { - "type": "string", - "maxLength": 18, - "description": "Country in which transaction occured.\n" - } - } - }, - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "checkDigit": { - "type": "string", - "maxLength": 1, - "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" - }, - "restrictedTicketIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "transactionType": { - "type": "integer", - "maxLength": 2, - "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" - }, - "extendedPaymentCode": { - "type": "string", - "maxLength": 3, - "description": "The field is not currently supported.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 42, - "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" - }, - "customerCode": { - "type": "string", - "maxLength": 40, - "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "documentType": { - "type": "string", - "maxLength": 1, - "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" - }, - "documentNumber": { - "type": "string", - "maxLength": 14, - "description": "The field is not currently supported.\n" - }, - "documentNumberOfParts": { - "type": "integer", - "maxLength": 4, - "description": "The field is not currently supported.\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 25, - "description": "Invoice number for the airline transaction.\n" - }, - "invoiceDate": { - "type": "integer", - "maxLength": 8, - "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" - }, - "additionalCharges": { - "type": "string", - "maxLength": 20, - "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" - }, - "totalFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingSequence": { - "type": "string", - "maxLength": 2, - "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" - }, - "totalClearingAmount": { - "type": "string", - "maxLength": 20, - "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationSystemCode": { - "type": "string", - "maxLength": 4, - "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "processIdentifier": { - "type": "string", - "maxLength": 3, - "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" - }, - "ticketIssueDate": { - "type": "string", - "maxLength": 8, - "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" - }, - "electronicTicketIndicator": { - "type": "boolean", - "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" - }, - "originalTicketNumber": { - "type": "string", - "maxLength": 14, - "description": "Original ticket number when the transaction is for a replacement ticket.\n" - }, - "purchaseType": { - "type": "string", - "maxLength": 3, - "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 1, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" - }, - "ticketChangeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" - }, - "planNumber": { - "type": "string", - "maxLength": 1, - "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" - }, - "arrivalDate": { - "type": "string", - "maxLength": 8, - "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" - }, - "restrictedTicketDesciption": { - "type": "string", - "maxLength": 20, - "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" - }, - "exchangeTicketAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" - }, - "exchangeTicketFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationType": { - "type": "string", - "maxLength": 32, - "description": "The field is not currently supported.\n" - }, - "boardingFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Boarding fee.\n" - }, - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "carrierCode": { - "type": "string", - "maxLength": 4, - "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "flightNumber": { - "type": "string", - "maxLength": 6, - "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "originatingAirportCode": { - "type": "string", - "maxLength": 5, - "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "class": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "stopoverIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureDate": { - "type": "integer", - "maxLength": 8, - "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "destinationAirportCode": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "fareBasis": { - "type": "string", - "maxLength": 15, - "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" - }, - "departTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of departure tax for this leg of the trip.\n" - }, - "conjunctionTicket": { - "type": "string", - "maxLength": 25, - "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "exchangeTicketNumber": { - "type": "string", - "maxLength": 25, - "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "couponNumber": { - "type": "string", - "maxLength": 1, - "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "departureTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "arrivalTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "arrivalTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "endorsementsRestrictions": { - "type": "string", - "maxLength": 20, - "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "totalFareAmount": { - "type": "string", - "maxLength": 15, - "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "feeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - } - } - } - }, - "ancillaryInformation": { - "type": "object", - "properties": { - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 20, - "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" - }, - "connectedTicketNumber": { - "type": "string", - "maxLength": 15, - "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 15, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "service": { - "type": "array", - "items": { - "type": "object", - "properties": { - "categoryCode": { - "type": "string", - "maxLength": 4, - "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "subCategoryCode": { - "type": "string", - "maxLength": 4, - "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" - } - } - } - } - } - } - } - } - } - } - } - }, - "promotionInformation": { - "type": "object", - "properties": { - "additionalCode": { - "type": "string", - "maxLength": 12, - "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" - }, - "code": { - "type": "string", - "maxLength": 12, - "description": "Code for a promotion or discount.\n" - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - }, - "x-example": { - "example0": { - "summary": "Capture a Payment", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - }, - "example1": { - "summary": "Capture a Payment - Service Fee", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2325.00", - "currency": "USD", - "serviceFeeAmount": "30.0" - } - }, - "merchantInformation": { - "serviceFeeDescriptor": { - "name": "Vacations Service Fee", - "contact": 8009999999, - "state": "CA" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example14" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - }, - "example2": { - "summary": "Capture of Authorization that used Swiped track data", - "sample-name": "Capture of Authorization that used Swiped track data", - "value": { - "clientReferenceInformation": { - "code": "1234567890", - "partner": { - "thirdPartyCertificationNumber": "123456789012" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": 100, - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example3": { - "summary": "Restaurant Capture with Gratuity", - "sample-name": "Restaurant Capture with Gratuity", - "value": { - "clientReferenceInformation": { - "code": 1234567890, - "partner": { - "thirdPartyCertificationNumber": 123456789012 - } - }, - "processingInformation": { - "industryDataType": "restaurant" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": 100, - "currency": "USD", - "gratuityAmount": "11.50" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The payment ID returned from a previous payment request. This ID links the capture to the payment.\n", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2PaymentsCapturesPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - }, - "void": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - }, - "refund": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "transactionId": { - "type": "string", - "maxLength": 18, - "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "totalAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount you requested for the capture.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "processorTransactionFee": { - "type": "string", - "maxLength": 15, - "description": "The fee decided by the PSP/Processor per transaction." - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "level3TransmissionStatus": { - "type": "boolean", - "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "enhancedDataEnabled": { - "type": "boolean", - "description": "The possible values for the reply field are:\n- `true` : the airline data was included in the request to the processor.\n- `false` : the airline data was not included in the request to the processor.\n\nReturned by authorization, capture, or credit services.\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/captures/4963014519526177701545", - "method": "GET" - }, - "refund": { - "href": "/pts/v2/captures/4963014519526177701545/refunds", - "method": "POST" - }, - "void": { - "href": "/pts/v2/captures/4963014519526177701545/voids", - "method": "POST" - } - }, - "id": "4963014519526177701545", - "submitTimeUtc": "2017-06-01T071731Z", - "status": "200", - "reconciliationId": "39570715X3E1LBQA", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "ptsV2PaymentsCapturesPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - EXCEEDS_AUTH_AMOUNT\n - AUTH_ALREADY_REVERSED\n - TRANSACTION_ALREADY_SETTLED\n - INVALID_AMOUNT\n - MISSING_AUTH\n - TRANSACTION_ALREADY_REVERSED_OR_SETTLED\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2PaymentsCapturesPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Capture a Payment", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - }, - "example1": { - "summary": "Capture a Payment - Service Fee", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2325.00", - "currency": "USD", - "serviceFeeAmount": "30.0" - } - }, - "merchantInformation": { - "serviceFeeDescriptor": { - "name": "Vacations Service Fee", - "contact": 8009999999, - "state": "CA" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example14" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - }, - "example2": { - "summary": "Capture of Authorization that used Swiped track data", - "sample-name": "Capture of Authorization that used Swiped track data", - "value": { - "clientReferenceInformation": { - "code": "1234567890", - "partner": { - "thirdPartyCertificationNumber": "123456789012" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": 100, - "currency": "USD" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example3": { - "summary": "Restaurant Capture with Gratuity", - "sample-name": "Restaurant Capture with Gratuity", - "value": { - "clientReferenceInformation": { - "code": 1234567890, - "partner": { - "thirdPartyCertificationNumber": 123456789012 - } - }, - "processingInformation": { - "industryDataType": "restaurant" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": 100, - "currency": "USD", - "gratuityAmount": "11.50" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - } - } - } - }, - "/pts/v2/payments/{id}/refunds": { - "post": { - "summary": "Refund a Payment", - "description": "Refund a Payment API is only used, if you have requested Authorization and Capture together in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call. Include the payment ID in the POST request to refund the payment amount.\n", - "tags": [ - "refund" - ], - "operationId": "refundPayment", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "refundPaymentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "purchaseLevel": { - "type": "string", - "maxLength": 1, - "description": "Set this field to 3 to indicate that the request includes Level III data." - }, - "recurringOptions": { - "type": "object", - "properties": { - "loanPayment": { - "type": "boolean", - "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", - "default": false - } - } - }, - "industryDataType": { - "type": "string", - "maxLength": 20, - "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "accountEncoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 5, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "sourceAccountType": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" - }, - "sourceAccountTypeDetails": { - "type": "string", - "maxLength": 4, - "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 1, - "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" - }, - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "encoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "checkNumber": { - "type": "string", - "maxLength": 8, - "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" - }, - "checkImageReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Image reference number associated with the check. You cannot include any special characters.\n" - } - } - }, - "routingNumber": { - "type": "string", - "maxLength": 9, - "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "iban": { - "type": "string", - "maxLength": 50, - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "cryptogram": { - "type": "string", - "maxLength": 255, - "description": "This field contains token information." - }, - "requestorId": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "assuranceLevel": { - "type": "string", - "maxLength": 2, - "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" - }, - "storageMethod": { - "type": "string", - "maxLength": 3, - "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "securityCodeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" - } - } - }, - "fluidData": { - "type": "object", - "properties": { - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 12, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "legacyToken": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 16, - "maxLength": 22 - } - } - }, - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - }, - "eWallet": { - "type": "object", - "properties": { - "accountId": { - "type": "string", - "maxLength": 26, - "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n" - }, - "nationalTaxIncluded": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" - }, - "taxAppliedLevel": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 3, - "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" - }, - "freightAmount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "foreignAmount": { - "type": "string", - "maxLength": 15, - "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "description": "Set this field to the converted amount that was returned by the DCC provider.\n" - }, - "exchangeRate": { - "type": "string", - "maxLength": 13, - "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" - }, - "exchangeRateTimeStamp": { - "type": "string", - "maxLength": 14, - "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" - }, - "amexAdditionalAmounts": { - "type": "array", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "amount": { - "type": "string", - "maxLength": 12, - "description": "Additional amount. This field is supported only for **American Express Direct**.\n" - } - } - } - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - }, - "originalCurrency": { - "type": "string", - "maxLength": 15, - "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "cashbackAmount": { - "type": "string", - "maxLength": 13, - "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "company": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "address1": { - "type": "string", - "maxLength": 40, - "description": "First line in the street address of the company purchasing the product." - }, - "address2": { - "type": "string", - "maxLength": 40, - "description": "Additional address information for the company purchasing the product." - }, - "locality": { - "type": "string", - "maxLength": 30, - "description": "City in the address of the company purchasing the product." - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - } - } - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "unitOfMeasure": { - "type": "string", - "maxLength": 12, - "description": "Unit of measure, or unit of measure code, for the item.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - }, - "taxRate": { - "type": "string", - "maxLength": 7, - "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" - }, - "taxStatusIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "amountIncludesTax": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "typeOfSupply": { - "type": "string", - "maxLength": 2, - "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 13, - "description": "Discount applied to the item." - }, - "discountApplied": { - "type": "boolean", - "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "discountRate": { - "type": "string", - "maxLength": 6, - "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 23, - "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - } - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "purchaseOrderNumber": { - "type": "string", - "maxLength": 25, - "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseContactName": { - "type": "string", - "maxLength": 36, - "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - }, - "vatInvoiceReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 4, - "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "transactionAdviceAddendum": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "maxLength": 40, - "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" - } - } - } - } - } - }, - "shippingDetails": { - "type": "object", - "properties": { - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "userAgent": { - "type": "string", - "maxLength": 40, - "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "alternateName": { - "type": "string", - "maxLength": 13, - "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" - }, - "contact": { - "type": "string", - "maxLength": 14, - "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "administrativeArea": { - "type": "string", - "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "phone": { - "type": "string", - "maxLength": 13, - "description": "Merchant phone as contact information for CNP transactions\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - }, - "countryOfOrigin": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" - } - } - }, - "categoryCode": { - "type": "integer", - "maximum": 9999, - "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "cardAcceptorReferenceNumber": { - "type": "string", - "maxLength": 25, - "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "aggregatorInformation": { - "type": "object", - "properties": { - "aggregatorId": { - "type": "string", - "maxLength": 20, - "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "name": { - "type": "string", - "maxLength": 37, - "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "subMerchant": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 37, - "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" - }, - "address1": { - "type": "string", - "maxLength": 38, - "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "locality": { - "type": "string", - "maxLength": 21, - "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "email": { - "type": "string", - "maxLength": 40, - "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" - }, - "id": { - "type": "string", - "maxLength": 20, - "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - }, - "fallback": { - "type": "boolean", - "maxLength": 5, - "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" - } - } - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "maxLength": 2, - "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" - }, - "agency": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 8, - "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" - }, - "name": { - "type": "string", - "maxLength": 25, - "description": "Name of travel agency that made the reservation.\n" - } - } - }, - "autoRental": { - "type": "object", - "properties": { - "noShowIndicator": { - "type": "boolean", - "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" - }, - "customerName": { - "type": "string", - "maxLength": 40, - "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" - }, - "vehicleClass": { - "type": "string", - "maxLength": 4, - "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" - }, - "distanceTravelled": { - "type": "string", - "maxLength": 5, - "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" - }, - "distanceUnit": { - "type": "string", - "maxLength": 1, - "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" - }, - "returnDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "rentalDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "maxFreeDistance": { - "type": "string", - "maxLength": 4, - "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" - }, - "insuranceIndicator": { - "type": "boolean", - "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" - }, - "programCode": { - "type": "string", - "maxLength": 2, - "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" - }, - "returnAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City where the auto was returned to the rental agency.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" - } - } - }, - "rentalAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" - }, - "address1": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "address2": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" - } - } - }, - "agreementNumber": { - "type": "string", - "maxLength": 25, - "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" - }, - "odometerReading": { - "type": "string", - "maxLength": 8, - "description": "Odometer reading at time of vehicle rental.\n" - }, - "vehicleIdentificationNumber": { - "type": "string", - "maxLength": 20, - "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" - }, - "companyId": { - "type": "string", - "maxLength": 12, - "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" - }, - "numberOfAdditionalDrivers": { - "type": "string", - "maxLength": 1, - "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" - }, - "driverAge": { - "type": "string", - "maxLength": 3, - "description": "Age of the driver renting the vehicle.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 2, - "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" - }, - "vehicleMake": { - "type": "string", - "maxLength": 10, - "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" - }, - "vehicleModel": { - "type": "string", - "maxLength": 10, - "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" - }, - "timePeriod": { - "type": "string", - "maxLength": 7, - "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" - }, - "taxDetails": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" - }, - "taxType": { - "type": "string", - "maxLength": 10, - "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" - }, - "taxSummary": { - "type": "string", - "maxLength": 12, - "description": "Summary of all tax types\n" - } - } - }, - "insuranceAmount": { - "type": "string", - "maxLength": 12, - "description": "Insurance charges.\nField is conditional and can include decimal point.\n" - }, - "oneWayDropOffAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" - }, - "adjustedAmountIndicator": { - "type": "string", - "maxLength": 1, - "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" - }, - "adjustedAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" - }, - "fuelCharges": { - "type": "string", - "maxLength": 12, - "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "weeklyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" - }, - "dailyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" - }, - "ratePerMile": { - "type": "string", - "maxLength": 12, - "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" - }, - "mileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" - }, - "extraMileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "lateFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" - }, - "towingCharge": { - "type": "string", - "maxLength": 4, - "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" - }, - "extraCharge": { - "type": "string", - "maxLength": 12, - "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" - }, - "gpsCharge": { - "type": "string", - "maxLength": 12, - "description": "Amount charged for renting a Global Positioning Service (GPS).\n" - }, - "phoneCharge": { - "type": "string", - "maxLength": 12, - "description": "Additional charges incurred for phone usage included on the total bill.\n" - }, - "parkingViolationCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" - }, - "otherCharges": { - "type": "string", - "maxLength": 12, - "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" - } - } - }, - "lodging": { - "type": "object", - "properties": { - "checkInDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "checkOutDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "room": { - "type": "array", - "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", - "items": { - "type": "object", - "properties": { - "dailyRate": { - "type": "string", - "maxLength": 8, - "description": "Daily cost of the room.\n" - }, - "numberOfNights": { - "type": "integer", - "minimum": 1, - "maximum": 9999, - "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" - } - } - } - }, - "smokingPreference": { - "type": "string", - "maxLength": 1, - "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" - }, - "numberOfRooms": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of rooms booked by the cardholder.\n" - }, - "numberOfGuests": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of guests staying in the room.\n" - }, - "roomBedType": { - "type": "string", - "maxLength": 12, - "description": "Type of room, such as queen, king, or two doubles.\n" - }, - "roomTaxType": { - "type": "string", - "maxLength": 10, - "description": "Type of tax, such as tourist or hotel.\n" - }, - "roomRateType": { - "type": "string", - "maxLength": 12, - "description": "Type of rate, such as corporate or senior citizen.\n" - }, - "guestName": { - "type": "string", - "maxLength": 40, - "description": "Name of the guest under which the room is reserved.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Your toll-free customer service phone number.\n" - }, - "corporateClientCode": { - "type": "string", - "maxLength": 17, - "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" - }, - "additionalDiscountAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of an additional coupon or discount.\n" - }, - "roomLocation": { - "type": "string", - "maxLength": 10, - "description": "Location of room, such as lake view or ocean view.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 1, - "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" - }, - "totalTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount.\n" - }, - "prepaidCost": { - "type": "string", - "maxLength": 12, - "description": "Prepaid amount, such as a deposit.\n" - }, - "foodAndBeverageCost": { - "type": "string", - "maxLength": 12, - "description": "Cost for all food and beverages.\n" - }, - "roomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax for the room.\n" - }, - "adjustmentAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" - }, - "phoneCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of telephone services.\n" - }, - "restaurantCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of restaurant purchases\n" - }, - "roomServiceCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of room service.\n" - }, - "miniBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of mini-bar purchases.\n" - }, - "laundryCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of laundry services.\n" - }, - "miscellaneousCost": { - "type": "string", - "maxLength": 12, - "description": "Miscellaneous costs.\n" - }, - "giftShopCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of gift shop purchases.\n" - }, - "movieCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of movies.\n" - }, - "healthClubCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of health club services.\n" - }, - "valetParkingCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of valet parking services.\n" - }, - "cashDisbursementCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of the cash that was disbursed plus any associated service fees\n" - }, - "nonRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of non-room purchases, such as meals and gifts.\n" - }, - "businessCenterCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of business center services.\n" - }, - "loungeBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of lounge and bar purchases.\n" - }, - "transportationCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of transportation services.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 12, - "description": "Gratuity.\n" - }, - "conferenceRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of conference room services.\n" - }, - "audioVisualCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of audio visual services.\n" - }, - "banquestCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of banquet services.\n" - }, - "nonRoomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax on non-room purchases.\n" - }, - "earlyCheckOutCost": { - "type": "string", - "maxLength": 12, - "description": "Service fee for early departure.\n" - }, - "internetAccessCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of Internet access.\n" - } - } - }, - "transit": { - "type": "object", - "properties": { - "airline": { - "type": "object", - "properties": { - "bookingReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" - }, - "carrierName": { - "type": "string", - "maxLength": 15, - "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "ticketIssuer": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 4, - "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" - }, - "name": { - "type": "string", - "maxLength": 20, - "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" - }, - "address": { - "type": "string", - "maxLength": 16, - "description": "Address of the company issuing the ticket.\n" - }, - "locality": { - "type": "string", - "maxLength": 18, - "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 18, - "description": "State in which transaction occured.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Zip code of the city in which transaction occured.\n" - }, - "country": { - "type": "string", - "maxLength": 18, - "description": "Country in which transaction occured.\n" - } - } - }, - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "checkDigit": { - "type": "string", - "maxLength": 1, - "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" - }, - "restrictedTicketIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "transactionType": { - "type": "integer", - "maxLength": 2, - "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" - }, - "extendedPaymentCode": { - "type": "string", - "maxLength": 3, - "description": "The field is not currently supported.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 42, - "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" - }, - "customerCode": { - "type": "string", - "maxLength": 40, - "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "documentType": { - "type": "string", - "maxLength": 1, - "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" - }, - "documentNumber": { - "type": "string", - "maxLength": 14, - "description": "The field is not currently supported.\n" - }, - "documentNumberOfParts": { - "type": "integer", - "maxLength": 4, - "description": "The field is not currently supported.\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 25, - "description": "Invoice number for the airline transaction.\n" - }, - "invoiceDate": { - "type": "integer", - "maxLength": 8, - "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" - }, - "additionalCharges": { - "type": "string", - "maxLength": 20, - "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" - }, - "totalFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingSequence": { - "type": "string", - "maxLength": 2, - "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" - }, - "totalClearingAmount": { - "type": "string", - "maxLength": 20, - "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationSystemCode": { - "type": "string", - "maxLength": 4, - "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "processIdentifier": { - "type": "string", - "maxLength": 3, - "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" - }, - "ticketIssueDate": { - "type": "string", - "maxLength": 8, - "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" - }, - "electronicTicketIndicator": { - "type": "boolean", - "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" - }, - "originalTicketNumber": { - "type": "string", - "maxLength": 14, - "description": "Original ticket number when the transaction is for a replacement ticket.\n" - }, - "purchaseType": { - "type": "string", - "maxLength": 3, - "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 1, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" - }, - "ticketChangeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" - }, - "planNumber": { - "type": "string", - "maxLength": 1, - "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" - }, - "arrivalDate": { - "type": "string", - "maxLength": 8, - "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" - }, - "restrictedTicketDesciption": { - "type": "string", - "maxLength": 20, - "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" - }, - "exchangeTicketAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" - }, - "exchangeTicketFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationType": { - "type": "string", - "maxLength": 32, - "description": "The field is not currently supported.\n" - }, - "boardingFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Boarding fee.\n" - }, - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "carrierCode": { - "type": "string", - "maxLength": 4, - "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "flightNumber": { - "type": "string", - "maxLength": 6, - "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "originatingAirportCode": { - "type": "string", - "maxLength": 5, - "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "class": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "stopoverIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureDate": { - "type": "integer", - "maxLength": 8, - "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "destinationAirportCode": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "fareBasis": { - "type": "string", - "maxLength": 15, - "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" - }, - "departTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of departure tax for this leg of the trip.\n" - }, - "conjunctionTicket": { - "type": "string", - "maxLength": 25, - "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "exchangeTicketNumber": { - "type": "string", - "maxLength": 25, - "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "couponNumber": { - "type": "string", - "maxLength": 1, - "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "departureTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "arrivalTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "arrivalTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "endorsementsRestrictions": { - "type": "string", - "maxLength": 20, - "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "totalFareAmount": { - "type": "string", - "maxLength": 15, - "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "feeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - } - } - } - }, - "ancillaryInformation": { - "type": "object", - "properties": { - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 20, - "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" - }, - "connectedTicketNumber": { - "type": "string", - "maxLength": 15, - "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 15, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "service": { - "type": "array", - "items": { - "type": "object", - "properties": { - "categoryCode": { - "type": "string", - "maxLength": 4, - "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "subCategoryCode": { - "type": "string", - "maxLength": 4, - "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" - } - } - } - } - } - } - } - } - } - } - } - }, - "promotionInformation": { - "type": "object", - "properties": { - "additionalCode": { - "type": "string", - "maxLength": 12, - "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" - }, - "code": { - "type": "string", - "maxLength": 12, - "description": "Code for a promotion or discount.\n" - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "Testing-VDP-Payments-Refund" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The payment ID. This ID is returned from a previous payment request.", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2PaymentsRefundPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - }, - "void": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "refundAmountDetails": { - "type": "object", - "properties": { - "refundAmount": { - "type": "string", - "maxLength": 15, - "description": "Total amount of the refund." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - }, - "transactionId": { - "type": "string", - "maxLength": 18, - "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" - }, - "forwardedAcquirerCode": { - "type": "string", - "maxLength": 32, - "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" - }, - "merchantNumber": { - "type": "string", - "maxLength": 15, - "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "achVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 2, - "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - }, - "resultCodeRaw": { - "type": "string", - "maxLength": 10, - "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - } - } - }, - "networkTransactionId": { - "type": "string", - "description": "Same value as `processorInformation.transactionId`" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "invoiceDetails": { - "type": "object", - "properties": { - "level3TransmissionStatus": { - "type": "boolean", - "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/refunds/4963014779006178301545", - "method": "GET" - }, - "void": { - "href": "/pts/v2/refunds/4963014779006178301545/voids", - "method": "POST" - } - }, - "id": "4963014779006178301545", - "submitTimeUtc": "2017-06-01T071757Z", - "status": "200", - "reconciliationId": "39571012D3DFEKS0", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "Testing-VDP-Payments-Refund" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "refundAmountDetails": { - "currency": "USD", - "refundAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "ptsV2PaymentsRefundPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2PaymentsRefundPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Refund a Payment", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "10", - "currency": "USD" - } - } - } - }, - "example1": { - "summary": "Electronic check follow-on Refund", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "processingInformation": { - "commerceIndicator": "internet" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - } - }, - "paymentInformation": { - "paymentType": { - "name": "CHECK" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/captures/{id}/refunds": { - "post": { - "summary": "Refund a Capture", - "description": "Refund a capture API is only used, if you have requested Capture independenlty using [/pts/v2/payments/{id}/captures](https://developer.cybersource.com/api-reference-assets/index.html#payments_capture) API call. Include the capture ID in the POST request to refund the captured amount.\n", - "tags": [ - "refund" - ], - "operationId": "refundCapture", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "refundCaptureRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "purchaseLevel": { - "type": "string", - "maxLength": 1, - "description": "Set this field to 3 to indicate that the request includes Level III data." - }, - "recurringOptions": { - "type": "object", - "properties": { - "loanPayment": { - "type": "boolean", - "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", - "default": false - } - } - }, - "industryDataType": { - "type": "string", - "maxLength": 20, - "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "accountEncoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 5, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "sourceAccountType": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" - }, - "sourceAccountTypeDetails": { - "type": "string", - "maxLength": 4, - "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 1, - "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" - }, - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "encoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "checkNumber": { - "type": "string", - "maxLength": 8, - "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" - }, - "checkImageReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Image reference number associated with the check. You cannot include any special characters.\n" - } - } - }, - "routingNumber": { - "type": "string", - "maxLength": 9, - "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "iban": { - "type": "string", - "maxLength": 50, - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "cryptogram": { - "type": "string", - "maxLength": 255, - "description": "This field contains token information." - }, - "requestorId": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "assuranceLevel": { - "type": "string", - "maxLength": 2, - "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" - }, - "storageMethod": { - "type": "string", - "maxLength": 3, - "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "securityCodeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" - } - } - }, - "fluidData": { - "type": "object", - "properties": { - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 12, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "legacyToken": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 16, - "maxLength": 22 - } - } - }, - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - }, - "eWallet": { - "type": "object", - "properties": { - "accountId": { - "type": "string", - "maxLength": 26, - "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n" - }, - "nationalTaxIncluded": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" - }, - "taxAppliedLevel": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 3, - "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" - }, - "freightAmount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "foreignAmount": { - "type": "string", - "maxLength": 15, - "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "description": "Set this field to the converted amount that was returned by the DCC provider.\n" - }, - "exchangeRate": { - "type": "string", - "maxLength": 13, - "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" - }, - "exchangeRateTimeStamp": { - "type": "string", - "maxLength": 14, - "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" - }, - "amexAdditionalAmounts": { - "type": "array", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "amount": { - "type": "string", - "maxLength": 12, - "description": "Additional amount. This field is supported only for **American Express Direct**.\n" - } - } - } - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - }, - "originalCurrency": { - "type": "string", - "maxLength": 15, - "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "cashbackAmount": { - "type": "string", - "maxLength": 13, - "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "company": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "address1": { - "type": "string", - "maxLength": 40, - "description": "First line in the street address of the company purchasing the product." - }, - "address2": { - "type": "string", - "maxLength": 40, - "description": "Additional address information for the company purchasing the product." - }, - "locality": { - "type": "string", - "maxLength": 30, - "description": "City in the address of the company purchasing the product." - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - } - } - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "unitOfMeasure": { - "type": "string", - "maxLength": 12, - "description": "Unit of measure, or unit of measure code, for the item.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - }, - "taxRate": { - "type": "string", - "maxLength": 7, - "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" - }, - "taxStatusIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "amountIncludesTax": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "typeOfSupply": { - "type": "string", - "maxLength": 2, - "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 13, - "description": "Discount applied to the item." - }, - "discountApplied": { - "type": "boolean", - "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "discountRate": { - "type": "string", - "maxLength": 6, - "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 23, - "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - } - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "purchaseOrderNumber": { - "type": "string", - "maxLength": 25, - "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseContactName": { - "type": "string", - "maxLength": 36, - "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - }, - "vatInvoiceReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 4, - "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "transactionAdviceAddendum": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "maxLength": 40, - "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" - } - } - } - } - } - }, - "shippingDetails": { - "type": "object", - "properties": { - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "userAgent": { - "type": "string", - "maxLength": 40, - "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "alternateName": { - "type": "string", - "maxLength": 13, - "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" - }, - "contact": { - "type": "string", - "maxLength": 14, - "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "administrativeArea": { - "type": "string", - "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "phone": { - "type": "string", - "maxLength": 13, - "description": "Merchant phone as contact information for CNP transactions\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - }, - "countryOfOrigin": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" - } - } - }, - "categoryCode": { - "type": "integer", - "maximum": 9999, - "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "cardAcceptorReferenceNumber": { - "type": "string", - "maxLength": 25, - "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "aggregatorInformation": { - "type": "object", - "properties": { - "aggregatorId": { - "type": "string", - "maxLength": 20, - "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "name": { - "type": "string", - "maxLength": 37, - "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "subMerchant": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 37, - "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" - }, - "address1": { - "type": "string", - "maxLength": 38, - "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "locality": { - "type": "string", - "maxLength": 21, - "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "email": { - "type": "string", - "maxLength": 40, - "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" - }, - "id": { - "type": "string", - "maxLength": 20, - "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - }, - "fallback": { - "type": "boolean", - "maxLength": 5, - "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" - } - } - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "maxLength": 2, - "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" - }, - "agency": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 8, - "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" - }, - "name": { - "type": "string", - "maxLength": 25, - "description": "Name of travel agency that made the reservation.\n" - } - } - }, - "autoRental": { - "type": "object", - "properties": { - "noShowIndicator": { - "type": "boolean", - "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" - }, - "customerName": { - "type": "string", - "maxLength": 40, - "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" - }, - "vehicleClass": { - "type": "string", - "maxLength": 4, - "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" - }, - "distanceTravelled": { - "type": "string", - "maxLength": 5, - "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" - }, - "distanceUnit": { - "type": "string", - "maxLength": 1, - "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" - }, - "returnDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "rentalDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "maxFreeDistance": { - "type": "string", - "maxLength": 4, - "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" - }, - "insuranceIndicator": { - "type": "boolean", - "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" - }, - "programCode": { - "type": "string", - "maxLength": 2, - "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" - }, - "returnAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City where the auto was returned to the rental agency.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" - } - } - }, - "rentalAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" - }, - "address1": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "address2": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" - } - } - }, - "agreementNumber": { - "type": "string", - "maxLength": 25, - "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" - }, - "odometerReading": { - "type": "string", - "maxLength": 8, - "description": "Odometer reading at time of vehicle rental.\n" - }, - "vehicleIdentificationNumber": { - "type": "string", - "maxLength": 20, - "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" - }, - "companyId": { - "type": "string", - "maxLength": 12, - "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" - }, - "numberOfAdditionalDrivers": { - "type": "string", - "maxLength": 1, - "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" - }, - "driverAge": { - "type": "string", - "maxLength": 3, - "description": "Age of the driver renting the vehicle.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 2, - "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" - }, - "vehicleMake": { - "type": "string", - "maxLength": 10, - "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" - }, - "vehicleModel": { - "type": "string", - "maxLength": 10, - "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" - }, - "timePeriod": { - "type": "string", - "maxLength": 7, - "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" - }, - "taxDetails": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" - }, - "taxType": { - "type": "string", - "maxLength": 10, - "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" - }, - "taxSummary": { - "type": "string", - "maxLength": 12, - "description": "Summary of all tax types\n" - } - } - }, - "insuranceAmount": { - "type": "string", - "maxLength": 12, - "description": "Insurance charges.\nField is conditional and can include decimal point.\n" - }, - "oneWayDropOffAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" - }, - "adjustedAmountIndicator": { - "type": "string", - "maxLength": 1, - "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" - }, - "adjustedAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" - }, - "fuelCharges": { - "type": "string", - "maxLength": 12, - "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "weeklyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" - }, - "dailyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" - }, - "ratePerMile": { - "type": "string", - "maxLength": 12, - "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" - }, - "mileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" - }, - "extraMileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "lateFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" - }, - "towingCharge": { - "type": "string", - "maxLength": 4, - "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" - }, - "extraCharge": { - "type": "string", - "maxLength": 12, - "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" - }, - "gpsCharge": { - "type": "string", - "maxLength": 12, - "description": "Amount charged for renting a Global Positioning Service (GPS).\n" - }, - "phoneCharge": { - "type": "string", - "maxLength": 12, - "description": "Additional charges incurred for phone usage included on the total bill.\n" - }, - "parkingViolationCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" - }, - "otherCharges": { - "type": "string", - "maxLength": 12, - "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" - } - } - }, - "lodging": { - "type": "object", - "properties": { - "checkInDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "checkOutDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "room": { - "type": "array", - "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", - "items": { - "type": "object", - "properties": { - "dailyRate": { - "type": "string", - "maxLength": 8, - "description": "Daily cost of the room.\n" - }, - "numberOfNights": { - "type": "integer", - "minimum": 1, - "maximum": 9999, - "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" - } - } - } - }, - "smokingPreference": { - "type": "string", - "maxLength": 1, - "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" - }, - "numberOfRooms": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of rooms booked by the cardholder.\n" - }, - "numberOfGuests": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of guests staying in the room.\n" - }, - "roomBedType": { - "type": "string", - "maxLength": 12, - "description": "Type of room, such as queen, king, or two doubles.\n" - }, - "roomTaxType": { - "type": "string", - "maxLength": 10, - "description": "Type of tax, such as tourist or hotel.\n" - }, - "roomRateType": { - "type": "string", - "maxLength": 12, - "description": "Type of rate, such as corporate or senior citizen.\n" - }, - "guestName": { - "type": "string", - "maxLength": 40, - "description": "Name of the guest under which the room is reserved.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Your toll-free customer service phone number.\n" - }, - "corporateClientCode": { - "type": "string", - "maxLength": 17, - "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" - }, - "additionalDiscountAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of an additional coupon or discount.\n" - }, - "roomLocation": { - "type": "string", - "maxLength": 10, - "description": "Location of room, such as lake view or ocean view.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 1, - "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" - }, - "totalTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount.\n" - }, - "prepaidCost": { - "type": "string", - "maxLength": 12, - "description": "Prepaid amount, such as a deposit.\n" - }, - "foodAndBeverageCost": { - "type": "string", - "maxLength": 12, - "description": "Cost for all food and beverages.\n" - }, - "roomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax for the room.\n" - }, - "adjustmentAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" - }, - "phoneCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of telephone services.\n" - }, - "restaurantCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of restaurant purchases\n" - }, - "roomServiceCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of room service.\n" - }, - "miniBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of mini-bar purchases.\n" - }, - "laundryCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of laundry services.\n" - }, - "miscellaneousCost": { - "type": "string", - "maxLength": 12, - "description": "Miscellaneous costs.\n" - }, - "giftShopCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of gift shop purchases.\n" - }, - "movieCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of movies.\n" - }, - "healthClubCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of health club services.\n" - }, - "valetParkingCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of valet parking services.\n" - }, - "cashDisbursementCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of the cash that was disbursed plus any associated service fees\n" - }, - "nonRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of non-room purchases, such as meals and gifts.\n" - }, - "businessCenterCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of business center services.\n" - }, - "loungeBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of lounge and bar purchases.\n" - }, - "transportationCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of transportation services.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 12, - "description": "Gratuity.\n" - }, - "conferenceRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of conference room services.\n" - }, - "audioVisualCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of audio visual services.\n" - }, - "banquestCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of banquet services.\n" - }, - "nonRoomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax on non-room purchases.\n" - }, - "earlyCheckOutCost": { - "type": "string", - "maxLength": 12, - "description": "Service fee for early departure.\n" - }, - "internetAccessCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of Internet access.\n" - } - } - }, - "transit": { - "type": "object", - "properties": { - "airline": { - "type": "object", - "properties": { - "bookingReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" - }, - "carrierName": { - "type": "string", - "maxLength": 15, - "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "ticketIssuer": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 4, - "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" - }, - "name": { - "type": "string", - "maxLength": 20, - "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" - }, - "address": { - "type": "string", - "maxLength": 16, - "description": "Address of the company issuing the ticket.\n" - }, - "locality": { - "type": "string", - "maxLength": 18, - "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 18, - "description": "State in which transaction occured.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Zip code of the city in which transaction occured.\n" - }, - "country": { - "type": "string", - "maxLength": 18, - "description": "Country in which transaction occured.\n" - } - } - }, - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "checkDigit": { - "type": "string", - "maxLength": 1, - "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" - }, - "restrictedTicketIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "transactionType": { - "type": "integer", - "maxLength": 2, - "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" - }, - "extendedPaymentCode": { - "type": "string", - "maxLength": 3, - "description": "The field is not currently supported.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 42, - "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" - }, - "customerCode": { - "type": "string", - "maxLength": 40, - "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "documentType": { - "type": "string", - "maxLength": 1, - "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" - }, - "documentNumber": { - "type": "string", - "maxLength": 14, - "description": "The field is not currently supported.\n" - }, - "documentNumberOfParts": { - "type": "integer", - "maxLength": 4, - "description": "The field is not currently supported.\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 25, - "description": "Invoice number for the airline transaction.\n" - }, - "invoiceDate": { - "type": "integer", - "maxLength": 8, - "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" - }, - "additionalCharges": { - "type": "string", - "maxLength": 20, - "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" - }, - "totalFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingSequence": { - "type": "string", - "maxLength": 2, - "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" - }, - "totalClearingAmount": { - "type": "string", - "maxLength": 20, - "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationSystemCode": { - "type": "string", - "maxLength": 4, - "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "processIdentifier": { - "type": "string", - "maxLength": 3, - "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" - }, - "ticketIssueDate": { - "type": "string", - "maxLength": 8, - "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" - }, - "electronicTicketIndicator": { - "type": "boolean", - "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" - }, - "originalTicketNumber": { - "type": "string", - "maxLength": 14, - "description": "Original ticket number when the transaction is for a replacement ticket.\n" - }, - "purchaseType": { - "type": "string", - "maxLength": 3, - "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 1, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" - }, - "ticketChangeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" - }, - "planNumber": { - "type": "string", - "maxLength": 1, - "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" - }, - "arrivalDate": { - "type": "string", - "maxLength": 8, - "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" - }, - "restrictedTicketDesciption": { - "type": "string", - "maxLength": 20, - "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" - }, - "exchangeTicketAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" - }, - "exchangeTicketFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationType": { - "type": "string", - "maxLength": 32, - "description": "The field is not currently supported.\n" - }, - "boardingFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Boarding fee.\n" - }, - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "carrierCode": { - "type": "string", - "maxLength": 4, - "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "flightNumber": { - "type": "string", - "maxLength": 6, - "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "originatingAirportCode": { - "type": "string", - "maxLength": 5, - "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "class": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "stopoverIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureDate": { - "type": "integer", - "maxLength": 8, - "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "destinationAirportCode": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "fareBasis": { - "type": "string", - "maxLength": 15, - "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" - }, - "departTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of departure tax for this leg of the trip.\n" - }, - "conjunctionTicket": { - "type": "string", - "maxLength": 25, - "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "exchangeTicketNumber": { - "type": "string", - "maxLength": 25, - "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "couponNumber": { - "type": "string", - "maxLength": 1, - "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "departureTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "arrivalTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "arrivalTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "endorsementsRestrictions": { - "type": "string", - "maxLength": 20, - "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "totalFareAmount": { - "type": "string", - "maxLength": 15, - "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "feeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - } - } - } - }, - "ancillaryInformation": { - "type": "object", - "properties": { - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 20, - "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" - }, - "connectedTicketNumber": { - "type": "string", - "maxLength": 15, - "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 15, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "service": { - "type": "array", - "items": { - "type": "object", - "properties": { - "categoryCode": { - "type": "string", - "maxLength": 4, - "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "subCategoryCode": { - "type": "string", - "maxLength": 4, - "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" - } - } - } - } - } - } - } - } - } - } - } - }, - "promotionInformation": { - "type": "object", - "properties": { - "additionalCode": { - "type": "string", - "maxLength": 12, - "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" - }, - "code": { - "type": "string", - "maxLength": 12, - "description": "Code for a promotion or discount.\n" - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "Testing-VDP-Payments-Refund" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The capture ID. This ID is returned from a previous capture request.", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2CapturesRefundsPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - }, - "void": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "refundAmountDetails": { - "type": "object", - "properties": { - "refundAmount": { - "type": "string", - "maxLength": 15, - "description": "Total amount of the refund." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - }, - "transactionId": { - "type": "string", - "maxLength": 18, - "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" - }, - "forwardedAcquirerCode": { - "type": "string", - "maxLength": 32, - "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" - }, - "merchantNumber": { - "type": "string", - "maxLength": 15, - "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "achVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 2, - "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - }, - "resultCodeRaw": { - "type": "string", - "maxLength": 10, - "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - } - } - }, - "networkTransactionId": { - "type": "string", - "description": "Same value as `processorInformation.transactionId`" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "invoiceDetails": { - "type": "object", - "properties": { - "level3TransmissionStatus": { - "type": "boolean", - "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/refunds/4963014779006178301545", - "method": "GET" - }, - "void": { - "href": "/pts/v2/refunds/4963014779006178301545/voids", - "method": "POST" - } - }, - "id": "4963014779006178301545", - "submitTimeUtc": "2017-06-01T071757Z", - "status": "200", - "reconciliationId": "39571012D3DFEKS0", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "Testing-VDP-Payments-Refund" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "refundAmountDetails": { - "currency": "USD", - "refundAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "ptsV2CapturesRefundsPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2CapturesRefundsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Refund a Capture", - "value": { - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "102.21", - "currency": "USD" - } - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments/{id}/captures", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/credits": { - "post": { - "summary": "Process a Credit", - "description": "POST to the credit resource to credit funds to a specified credit card.", - "tags": [ - "credit" - ], - "operationId": "createCredit", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "createCreditRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "commerceIndicator": { - "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" - }, - "processorId": { - "type": "string", - "maxLength": 3, - "description": "Value that identifies the processor/acquirer to use for the transaction. This value is supported only for\n**CyberSource through VisaNet**.\n\nContact CyberSource Customer Support to get the value for this field.\n" - }, - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "linkId": { - "type": "string", - "maxLength": 26, - "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "reportGroup": { - "type": "string", - "maxLength": 25, - "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - }, - "purchaseLevel": { - "type": "string", - "maxLength": 1, - "description": "Set this field to 3 to indicate that the request includes Level III data." - }, - "industryDataType": { - "type": "string", - "maxLength": 20, - "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "walletType": { - "type": "string", - "maxLength": 5, - "description": "This field carries the wallet type in authorization requests and credit requests. Possible value are:\n- `101`: Masterpass remote payment. The customer created the wallet by manually interacting with a customer-controlled device such as a computer, tablet, or phone. This value is supported only for Masterpass transactions on Chase Paymentech Solutions and CyberSource through VisaNet.\n- `102`: Masterpass remote near field communication (NFC) payment. The customer created the wallet by tapping a PayPass card or customer-controlled device at a contactless card reader. This value is supported only for card-present Masterpass transactions on CyberSource through VisaNet.\n- `103`: Masterpass Apple Pay payment. The payment was made with a combination of Masterpass and Apple Pay. This value is supported only for Masterpass Apple Pay transactions on CyberSource through VisaNet.\n- `216`: Masterpass Google Pay payment. The payment was made with a combination of Masterpass and Google Pay. This value is supported only for Masterpass Google Pay transactions on CyberSource through VisaNet.\n- `217`: Masterpass Samsung Pay payment. The payment was made with a combination of Masterpass and Samsung Pay. This value is supported only for Masterpass Samsung Pay transactions on CyberSource through VisaNet.\n- `SDW`: Staged digital wallet. An issuer or operator created the wallet. This value is supported only for Masterpass transactions on Chase Paymentech Solutions.\n- `VCIND`: Visa Checkout payment. This value is supported only on CyberSource through VisaNet, FDC Compass, FDC Nashville Global, FDI Australia, and TSYS Acquiring Solutions. See Getting Started with Visa Checkout. For Visa Checkout transactions, the way CyberSource processes the value for this field depends on the processor. See the Visa Checkout section below.\nFor all other values, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nMasterpass (101, 102, 103, 216, and 217): The Masterpass platform generates the wallet type value and passes it to you along with the customer\u2019s checkout information.\n\nVisa Checkout:\nThis field is optional for Visa Checkout authorizations on FDI Australia. For all other processors, this field is required for Visa Checkout authorizations.\nFor Visa Checkout transactions on the following processors, CyberSource sends the value that the processor expects for this field:FDC Compass,FDC Nashville Global,FDI Australia,TSYS Acquiring\nSolutions For all other processors, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nFor incremental authorizations, this field is supported only for Mastercard and the supported values are 101 and 102.\nPayment card companies can introduce new values without notice. Your order management system should be able to process new values without problems.\n\nCyberSource through VisaNet\nWhen the value for this field is 101, 102, 103, 216, or 217, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR6, Position: 88-90, Field: Mastercard Wallet Identifier.\nWhen the value for this field is VCIND, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR8, Position: 72-76, Field: Agent Unique ID.\n" - }, - "nationalNetDomesticData": { - "type": "string", - "maxLength": 123, - "description": "Supplementary domestic transaction information provided by the acquirer for National Net Settlement Service (NNSS) transactions. NNSS is a settlement service that Visa provides.\nFor transactions on CyberSource through VisaNet in countries that subscribe to NNSS:\nVisaNet clears transactions; VisaNet transfers funds to the acquirer after deducting processing fees and interchange fees.\nVisaNet settles transactions in the local pricing currency through a local financial institution.\nThis field is supported only on CyberSource through VisaNet for domestic data in Colombia\n" - }, - "networkRoutingOrder": { - "type": "string", - "maxLength": 30, - "description": "On PIN Debit Gateways: This U.S.-only field is optionally used by participants (merchants and acquirers) to specify the network access priority.\nVisaNet checks to determine if there are issuer routing preferences for any of the networks specified by the sharing group code.\nIf an issuer preference exists for one of the specified debit networks, VisaNet makes a routing selection based on the issuer\u2019s preference.\nIf an issuer preference exists for more than one of the specified debit networks, or if no issuer preference exists,\nVisaNet makes a selection based on the acquirer\u2019s routing priorities.\n\n#### PIN debit\nPriority order of the networks through which he transaction will be routed. Set this value to a series of one-character network codes in your preferred order. This is a list of the network codes:\n\n| Network | Code |\n| --- | --- |\n| Accel | E |\n| AFFN | U |\n| Alaska Option | 3 |\n| CU24 | C |\n| Interlink | G |\n| Maestro | 8 |\n| NETS | P |\n| NYCE | F |\n| Pulse | H |\n| Shazam | 7 |\n| Star | M |\n| Visa | V |\n\nFor example, if the Star network is your first preference and Pulse is your second preference, set this field to a value of `MH`.\n\nWhen you do not include this value in your PIN debit request, the list of network codes from your account is used.\n**Note** This field is supported only for businesses located in the U.S.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "recurringOptions": { - "type": "object", - "properties": { - "loanPayment": { - "type": "boolean", - "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", - "default": false - } - } - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "customerMemo": { - "type": "string", - "maxLength": 80, - "description": "Payment related information.\n\nThis information is included on the customer\u2019s statement.\n" - }, - "secCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nAccepts only the following values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "terminalCity": { - "type": "string", - "maxLength": 4, - "description": "City in which the terminal is located. If more than four alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" - }, - "terminalState": { - "type": "string", - "maxLength": 2, - "description": "State in which the terminal is located. If more than two alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" - }, - "effectiveDate": { - "type": "string", - "maxLength": 8, - "description": "Effective date for the transaction. The effective date must be within 45 days of the current day. If you do not\ninclude this value, CyberSource sets the effective date to the next business day.\n\nFormat: `MMDDYYYY`\n\nSupported only for the CyberSource ACH Service.\n" - }, - "partialPaymentId": { - "type": "string", - "maxLength": 25, - "description": "Identifier for a partial payment or partial credit.\n\nThe value for each debit request or credit request must be unique within the scope of the order.\nFor details, see `partial_payment_id` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "settlementMethod": { - "type": "string", - "maxLength": 1, - "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "purchaseOptions": { - "type": "object", - "properties": { - "isElectronicBenefitsTransfer": { - "type": "boolean", - "description": "Flag that indicates whether this transaction is an EBT transaction. Possible values:\n- `true`\n- `false`\n\n#### PIN debit\nRequired field for EBT and EBT voucher transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" - } - } - }, - "electronicBenefitsTransfer": { - "type": "object", - "properties": { - "category": { - "type": "string", - "maxLength": 4, - "description": "Flag that specifies the category for the EBT transaction.\n\nPossible values:\n- `CASH`: Cash benefits, which can be used to purchase any item at a participating retailer, as well as to obtain cash-back or make a cash withdrawal from a participating ATM.\n- `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program.\n\n#### PIN debit\nRequired field for EBT transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" - } - } - }, - "loanOptions": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 20, - "description": "Type of loan based on an agreement between you and the issuer.\nExamples: AGROCUSTEIO, AGRO-INVEST, BNDES-Type1, CBN, FINAME.\nThis field is supported only for these kinds of payments:\n- BNDES transactions on CyberSource through VisaNet.\n- Installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nSee \"\"Installment Payments on CyberSource through VisaNet,\"\" in the SCMP/SO guide\n\nFor BNDES transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR2, Position: 27-46, Field: Loan Type\n\nFor installment payments with Mastercard in Brazil, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR4, Position: 5-24,Field: Financing Type\n" - }, - "assetType": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a loan is for a recoverable item or a non-recoverable item.\nPossible values:\n- `N`: non-recoverable item\n- `R`: recoverable item\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n Record: CP07 TCR2, Position: 26, Field: Asset Indicator\n" - } - } - }, - "japanPaymentOptions": { - "type": "object", - "properties": { - "paymentMethod": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" - }, - "installments": { - "type": "string", - "maximum": 99, - "description": "Number of Installments.\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "accountEncoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 5, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "sourceAccountType": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" - }, - "sourceAccountTypeDetails": { - "type": "string", - "maxLength": 4, - "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 1, - "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" - }, - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "encoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "checkNumber": { - "type": "string", - "maxLength": 8, - "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" - }, - "checkImageReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Image reference number associated with the check. You cannot include any special characters.\n" - } - } - }, - "routingNumber": { - "type": "string", - "maxLength": 9, - "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "iban": { - "type": "string", - "maxLength": 50, - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "cryptogram": { - "type": "string", - "maxLength": 255, - "description": "This field contains token information." - }, - "requestorId": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "assuranceLevel": { - "type": "string", - "maxLength": 2, - "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" - }, - "storageMethod": { - "type": "string", - "maxLength": 3, - "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "securityCodeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" - } - } - }, - "fluidData": { - "type": "object", - "properties": { - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 12, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "legacyToken": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 16, - "maxLength": 22 - } - } - }, - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - }, - "eWallet": { - "type": "object", - "properties": { - "accountId": { - "type": "string", - "maxLength": 26, - "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "dutyAmount": { - "type": "string", - "maxLength": 15, - "description": "Total charges for any import or export duties included in the order.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 13, - "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n" - }, - "nationalTaxIncluded": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" - }, - "taxAppliedLevel": { - "type": "string", - "maxLength": 1, - "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 3, - "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" - }, - "freightAmount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "foreignAmount": { - "type": "string", - "maxLength": 15, - "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "foreignCurrency": { - "type": "string", - "maxLength": 5, - "description": "Set this field to the converted amount that was returned by the DCC provider.\n" - }, - "exchangeRate": { - "type": "string", - "maxLength": 13, - "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" - }, - "exchangeRateTimeStamp": { - "type": "string", - "maxLength": 14, - "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" - }, - "amexAdditionalAmounts": { - "type": "array", - "items": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "amount": { - "type": "string", - "maxLength": 12, - "description": "Additional amount. This field is supported only for **American Express Direct**.\n" - } - } - } - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - }, - "serviceFeeAmount": { - "type": "string", - "maxLength": 15, - "description": "Service fee. Required for service fee transactions.\n" - }, - "originalCurrency": { - "type": "string", - "maxLength": 15, - "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "cashbackAmount": { - "type": "string", - "maxLength": 13, - "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "company": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "address1": { - "type": "string", - "maxLength": 40, - "description": "First line in the street address of the company purchasing the product." - }, - "address2": { - "type": "string", - "maxLength": 40, - "description": "Additional address information for the company purchasing the product." - }, - "locality": { - "type": "string", - "maxLength": 30, - "description": "City in the address of the company purchasing the product." - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - } - } - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "unitOfMeasure": { - "type": "string", - "maxLength": 12, - "description": "Unit of measure, or unit of measure code, for the item.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - }, - "taxRate": { - "type": "string", - "maxLength": 7, - "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" - }, - "taxAppliedAfterDiscount": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" - }, - "taxStatusIndicator": { - "type": "string", - "maxLength": 1, - "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" - }, - "taxTypeCode": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "amountIncludesTax": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "typeOfSupply": { - "type": "string", - "maxLength": 2, - "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 13, - "description": "Discount applied to the item." - }, - "discountApplied": { - "type": "boolean", - "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" - }, - "discountRate": { - "type": "string", - "maxLength": 6, - "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 23, - "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "code": { - "type": "string", - "maxLength": 4, - "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - } - } - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "purchaseOrderNumber": { - "type": "string", - "maxLength": 25, - "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "purchaseContactName": { - "type": "string", - "maxLength": 36, - "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - }, - "vatInvoiceReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 4, - "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "transactionAdviceAddendum": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "maxLength": 40, - "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" - } - } - } - } - } - }, - "shippingDetails": { - "type": "object", - "properties": { - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "userAgent": { - "type": "string", - "maxLength": 40, - "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "alternateName": { - "type": "string", - "maxLength": 13, - "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" - }, - "contact": { - "type": "string", - "maxLength": 14, - "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "administrativeArea": { - "type": "string", - "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "phone": { - "type": "string", - "maxLength": 13, - "description": "Merchant phone as contact information for CNP transactions\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - }, - "countryOfOrigin": { - "type": "string", - "maxLength": 2, - "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" - } - } - }, - "categoryCode": { - "type": "integer", - "maximum": 9999, - "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "cardAcceptorReferenceNumber": { - "type": "string", - "maxLength": 25, - "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxId": { - "type": "string", - "maxLength": 15, - "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "aggregatorInformation": { - "type": "object", - "properties": { - "aggregatorId": { - "type": "string", - "maxLength": 20, - "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "name": { - "type": "string", - "maxLength": 37, - "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "subMerchant": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 37, - "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" - }, - "address1": { - "type": "string", - "maxLength": 38, - "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "locality": { - "type": "string", - "maxLength": 21, - "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "email": { - "type": "string", - "maxLength": 40, - "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" - }, - "id": { - "type": "string", - "maxLength": 20, - "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - }, - "terminalSerialNumber": { - "type": "string", - "maxLength": 32, - "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "laneNumber": { - "type": "string", - "maxLength": 8, - "description": "Identifier for an alternate terminal at your retail location. You define the value for this field.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors.\nUse the `terminalId` field to identify the main terminal at your retail location. If your retail location has multiple terminals,\nuse this `laneNumber` field to identify the terminal used for the transaction.\n\nThis field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor.\n\nOptional field.\n\n#### Card present reply messaging\nIdentifier for an alternate terminal at your retail location. You defined the value for this field in the request\nmessage. This value must be printed on the receipt.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global.\n" - }, - "catLevel": { - "type": "integer", - "minimum": 1, - "maximum": 9, - "description": "Type of cardholder-activated terminal. Possible values:\n\n - 1: Automated dispensing machine\n - 2: Self-service terminal\n - 3: Limited amount terminal\n - 4: In-flight commerce (IFC) terminal\n - 5: Radio frequency device\n - 6: Mobile acceptance terminal\n - 7: Electronic cash register\n - 8: E-commerce device at your location\n - 9: Terminal or cash register that uses a dialup connection to connect to the transaction processing network\n\n#### Chase Paymentech Solutions\nOnly values 1, 2, and 3 are supported.\n\nRequired if `pointOfSaleInformation.terminalID` is included in the request; otherwise, optional.\n\n#### CyberSource through VisaNet\nValues 1 through 6 are supported on\nCyberSource through VisaNet, but some\nacquirers do not support all six values.\n\nOptional field.\n\n#### FDC Nashville Global\nOnly values 7, 8, and 9 are supported.\n\nOptional field for EMV transactions; otherwise, not used.\n\n#### GPN\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### JCN Gateway\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### TSYS Acquiring Solutions\nOnly value 6 is supported.\n\nRequired for transactions from mobile devices; otherwise, not used.\n\n#### All other processors\nNot used.\n\nNonnegative integer.\n" - }, - "entryMode": { - "type": "string", - "maxLength": 11, - "description": "Method of entering payment card information into the POS terminal. Possible values:\n\n - `contact`: Read from direct contact with chip card.\n - `contactless`: Read from a contactless interface using chip data.\n - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.\n - `swiped`: Read from credit card magnetic stripe.\n\nThe `contact`, `contactless`, and `msd` values are supported only for EMV transactions.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### Card Present\nCard present information about EMV applies only to credit card processing and PIN debit processing. All other\ncard present information applies only to credit card processing.\n\n#### PIN debit\nRequired for a PIN debit purchase and a PIN debit credit request.\n" - }, - "terminalCapability": { - "type": "integer", - "minimum": 1, - "maximum": 5, - "description": "POS terminal\u2019s capability. Possible values:\n\n - `1`: Terminal has a magnetic stripe reader only.\n - `2`: Terminal has a magnetic stripe reader and manual entry capability.\n - `3`: Terminal has manual entry capability only.\n - `4`: Terminal can read chip cards.\n - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards.\n\nFor an EMV transaction, the value of this field must be `4` or `5`.\n\n#### PIN debit\nRequired for PIN debit purchase and PIN debit credit request.\n\n#### Used by\n**Authorization**\nRequired for the following processors:\n- American Express Direct\n- Chase Paymentech Solutions\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- FDMS Nashville\n- OmniPay Direct\n- SIX\n- Worldpay VAP\n\nOptional for the following processors:\n- CyberSource through VisaNet\n- GPN\n- GPX\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n" - }, - "operatingEnvironment": { - "type": "string", - "maxLength": 1, - "description": "Operating environment.\n\nPossible values for all card types except Mastercard:\n- `0`: No terminal used or unknown environment.\n- `1`: On merchant premises, attended.\n- `2`: On merchant premises, unattended. Examples: oil, kiosks, self-checkout, mobile telephone, personal digital assistant (PDA).\n- `3`: Off merchant premises, attended. Examples: portable POS devices at trade shows, at service calls, or in taxis.\n- `4`: Off merchant premises, unattended. Examples: vending machines, home computer, mobile telephone, PDA.\n- `5`: On premises of cardholder, unattended.\n- `9`: Unknown delivery mode.\n- `S`: Electronic delivery of product. Examples: music, software, or eTickets that are downloaded over the internet.\n- `T`: Physical delivery of product. Examples: music or software that is delivered by mail or by a courier.\n\n#### Possible values for Mastercard:\n- `2`: On merchant premises, unattended, or cardholder terminal. Examples: oil, kiosks, self-checkout, home computer, mobile telephone, personal digital assistant (PDA). Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n- `4`: Off merchant premises, unattended, or cardholder terminal. Examples: vending machines, home computer, mobile telephone, PDA. Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThis field is supported only for American Express Direct and CyberSource through VisaNet.\n" - }, - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - }, - "cardholderVerificationMethodUsed": { - "type": "integer", - "description": "Method that was used to verify the cardholder's identity.\n\nPossible values:\n - `0`: No verification\n - `1`: Signature\n\nThis field is supported only on **American Express Direct**.\n" - }, - "cardSequenceNumber": { - "type": "string", - "maxLength": 3, - "description": "Number assigned to a specific card when two or more cards are associated with the same primary account number.\nThis value enables issuers to distinguish among multiple cards that are linked to the same account. This value\ncan also act as a tracking tool when reissuing cards. When this value is available, it is provided by the chip\nreader. When the chip reader does not provide this value, do not include this field in your request.\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is\navailable only on CyberSource through VisaNet and FDC Nashville Global.\n\n#### Used by\nAuthorization: Optional\nPIN Debit processing: Optional\n\n#### GPX\n\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "fallback": { - "type": "boolean", - "maxLength": 5, - "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" - }, - "fallbackCondition": { - "type": "integer", - "description": "Reason for the EMV fallback transaction. An EMV fallback transaction occurs when an EMV transaction fails for\none of these reasons:\n\n - Technical failure: the EMV terminal or EMV card cannot read and process chip data.\n - Empty candidate list failure: the EMV terminal does not have any applications in common with the EMV card.\n EMV terminals are coded to determine whether the terminal and EMV card have any applications in common.\n EMV terminals provide this information to you.\n\nPossible values:\n\n - `1`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal either used information from a successful chip read or it was not a chip transaction.\n - `2`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal was an EMV fallback transaction because the attempted chip read was unsuccessful.\n\nThis field is supported only on **GPN** and **JCN Gateway**.\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field\nwhen the EMV terminal does not have any applications in common with the EMV card.\n" - }, - "isRepeat": { - "type": "boolean", - "description": "#### Visa Platform Connect\nValue \u201ctrue\u201d indicates this transaction is intentionally duplicated . The field contains value \u201ctrue\u201d which\nindicates that merchant has intentionally duplicated single tap transaction. Merchant is intentionally sending\na duplicate auth request for a single tap txn because the issuer requested a PIN.\n" - } - } - }, - "amexCapnData": { - "type": "string", - "maxLength": 15, - "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "trackData": { - "type": "string", - "description": "Card\u2019s track 1 and 2 data. For all processors except FDMS Nashville, this value consists of\none of the following:\n\n - Track 1 data\n - Track 2 data\n - Data for both tracks 1 and 2\n\nFor FDMS Nashville, this value consists of one of the following:\n - Track 1 data\n - Data for both tracks 1 and 2\n\nExample: %B4111111111111111^SMITH/JOHN ^1612101976110000868000000?;4111111111111111=16121019761186800000?\n\n#### Used by\n**Authorization**\nRequired for Chase Paymentech Solutions, Credit Mutuel-CIC, CyberSource through VisaNet, FDC Nashville Global,\nJCN Gateway, OmniPay Direct, and SIX if `pointOfSaleInformation.entryMode` is equal to one of these values:\n- `contact`\n- `contactless`\n- `msd`\n- `swiped`\nOtherwise, this field not used.\n\nRequired for all other processors if `pointOfSaleInformation.entryMode=swiped`; otherwise, this field is not used.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### PIN debit\nTrack 2 data from the debit card. The sentinels are required.\nRequired field for a PIN debit purchase and a PIN debit credit.\n" - }, - "storeAndForwardIndicator": { - "type": "string", - "maxLength": 1, - "description": "When connectivity is unavailable, the client software that is installed on the POS terminal can store a\ntransaction in its memory and send it for authorization when connectivity is restored. This value is provided by\nthe client software that is installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\nPossible values:\n- `Y`: Transaction was stored and then forwarded.\n- `N` (default): Transaction was not stored and then forwarded.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "cardholderVerificationMethod": { - "type": "array", - "items": { - "type": "string", - "example": [ - "PIN", - "Signature", - "pinOnGlass" - ] - }, - "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\nOptional field.\nPossible values:\n- `PIN`: For terminals with a PIN Pad\n- `Signature`: For terminals capable of receiving a signature\n- `pinOnGlass`: For terminals where PIN is entered on a glass-based capture mechanism\n\n**EXAMPLE**: [\"PIN\",\"Signature\"]; [\"pinOnGlass\",\"Signature\"]\n" - }, - "terminalInputCapability": { - "type": "array", - "items": { - "type": "string" - }, - "description": "Complete list of card input methods supported by the terminal.\n\nPossible values:\n- `Keyed`: Terminal can accept card data that is entered manually.\n- `Swiped`: Terminal can accept card data from a magnetic stripe reader.\n- `Contact`: Terminal can accept card data in EMV contact mode (\"dipping a card\").\n- `Contactless`: Terminal can accept card data in EMV contactless mode (\"tapping a card\").\n- `BarCode`: Terminal can read bar codes.\n- `QRcode`: Terminal can read or scan QR codes.\n- `OCR`: Terminal can perform optical character recognition (OCT) on the card.\n\n**EXAMPLE**: [\"Keyed\",\"Swiped\",\"Contact\",\"Contactless\"]\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "terminalCardCaptureCapability": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the terminal can capture the card.\n\nPossible values:\n- `1`: Terminal can capture card.\n- `0`: Terminal cannot capture card.\n\nFor authorizations and credits, this field is supported only by these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n\nOptional field.\n" - }, - "terminalOutputCapability": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the terminal can print or display messages.\n\nPossible values:\n- 1: Neither\n- 2: Print only\n- 3: Display only\n- 4: Print and display\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "terminalPinCapability": { - "type": "integer", - "description": "Maximum PIN length that the terminal can capture.\n\nPossible values:\n- 0: No PIN capture capability\n- 1: PIN capture capability unknown\n- 4: Four characters\n- 5: Five characters\n- 6: Six characters\n- 7: Seven characters\n- 8: Eight characters\n- 9: Nine characters\n- 10: Ten characters\n- 11: Eleven characters\n- 12: Twelve characters\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n- SIX\n\nRequired field for authorization or credit of PIN transactions.\n" - }, - "deviceId": { - "type": "string", - "maxLength": 32, - "description": "Value created by the client software that uniquely identifies the POS device. This value is provided by the\nclient software that is installed on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - }, - "pinBlockEncodingFormat": { - "type": "integer", - "maximum": 9, - "description": "Format that is used to encode the PIN block. This value is provided by the client software that is installed on\nthe POS terminal.\n\nPossible values:\n- `0`: ISO 9564 format 0\n- `1`: ISO 9564 format 1\n- `2`: ISO 9564 format 2\n- `3`: ISO 9564 format 3\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also supported by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n\n#### GPX\nFor chip and online PIN transactions for authorization, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Offline PIN\n- Chip and Signature\n\nFor PIN Debit Purchase and Credit Service transactions, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Online PIN\n" - }, - "encryptedPin": { - "type": "string", - "maxLength": 16, - "description": "Encrypted PIN.\n\nThis value is provided by the client software that is installed on the POS terminal.\n\n#### Used by\n**Authorization, PIN Debit**\nRequired when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\nRequired for PIN debit credit or PIN debit purchase.\nRequired for online PIN transactions.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" - }, - "encryptedKeySerialNumber": { - "type": "string", - "maxLength": 20, - "description": "Combination of the device's unique identifier and a transaction counter that is used in the process of\ndecrypting the encrypted PIN. The entity that injected the PIN encryption keys into the terminal decrypts the\nencrypted PIN and creates this value.\n\nFor all terminals that are using derived unique key per transaction (DUKPT) encryption, this is generated as a\nsingle number within the terminal.\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n- Required for online PIN transactions\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" - }, - "partnerSdkVersion": { - "type": "string", - "maxLength": 32, - "description": "Version of the software installed on the POS terminal. This value is provided by the client software that is\ninstalled on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "emvApplicationIdentifierAndDedicatedFileName": { - "type": "string", - "maxLength": 32, - "description": "This 32 byte length-maximum EBCDIC-K value is used to identify which chip application was performed between the terminal and the chip product.\nThe included values are the Application Identifier (AID) and the Dedicated File (DF) name. It is available to early- or full-option VSDC issuers.\nOnly single byte Katakana characters that can map to the EBCDIC-K table expected in the name.\n" - }, - "terminalCompliance": { - "type": "string", - "maxLength": 2, - "description": "Flag that indicates whether the terminal is compliant with standards mandated by the Reserve Bank of India for card-present domestic transactions in India.\n\nFormat:\n- First character indicates whether the terminal supports terminal line encryption (TLE). Possible values:\n - 1: Not certified\n - 2: Certified\n- Second character indicates whether the terminal supports Unique Key Per Transaction (UKPT) and Derived Unique Key Per Transaction (DUKPT). Possible values:\n - 1: Not certified\n - 2: Certified\n\n**Example** `21` indicates that the terminal supports TLE but does not support UKPT/DUKPT.\n\nYou and the terminal vendors are responsible for terminal certification. If you have questions, contact your acquirer.\n\nThis field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 92-93\n- Field: Mastercard Terminal Compliance Indicator\n\nThe 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n\n#### Used by\n**Authorization**\nRequired for card-present transactions in India. Otherwise, not used.\n" - }, - "isDedicatedHardwareTerminal": { - "type": "string", - "maxLength": 1, - "description": "Type of mPOS device. Possible values:\n- 0: Dongle\n- 1: Phone or tablet\n\nThis optional field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 141\n- Field: Mastercard mPOS Transaction\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s\nacquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n" - }, - "terminalModel": { - "type": "string", - "maxLength": 32, - "description": "This is the model name of the reader which is used to accept the payment.\nPossible values:\n - E3555\n - P400\n - A920\n" - }, - "terminalMake": { - "type": "string", - "maxLength": 32, - "description": "This is the manufacturer name of the reader which is used to accept the payment.\nPossible values:\n - PAX\n - Verifone\n - Ingenico\n" - }, - "serviceCode": { - "type": "string", - "maxLength": 3, - "description": "#### Visa Platform Connect\nMastercard service code that is included in the track data.\nYou can extract the service code from the track data and provide it in this API field.\nThis field is supported only for Mastercard on Visa Platform Connect.\n" - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "installmentInformation": { - "type": "object", - "properties": { - "planType": { - "type": "string", - "maxLength": 1, - "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "duration": { - "type": "string", - "maxLength": 2, - "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" - }, - "agency": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 8, - "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" - }, - "name": { - "type": "string", - "maxLength": 25, - "description": "Name of travel agency that made the reservation.\n" - } - } - }, - "autoRental": { - "type": "object", - "properties": { - "noShowIndicator": { - "type": "boolean", - "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" - }, - "customerName": { - "type": "string", - "maxLength": 40, - "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" - }, - "vehicleClass": { - "type": "string", - "maxLength": 4, - "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" - }, - "distanceTravelled": { - "type": "string", - "maxLength": 5, - "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" - }, - "distanceUnit": { - "type": "string", - "maxLength": 1, - "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" - }, - "returnDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "rentalDateTime": { - "type": "string", - "maxLength": 21, - "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" - }, - "maxFreeDistance": { - "type": "string", - "maxLength": 4, - "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" - }, - "insuranceIndicator": { - "type": "boolean", - "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" - }, - "programCode": { - "type": "string", - "maxLength": 2, - "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" - }, - "returnAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City where the auto was returned to the rental agency.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" - } - } - }, - "rentalAddress": { - "type": "object", - "properties": { - "city": { - "type": "string", - "maxLength": 25, - "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" - }, - "state": { - "type": "string", - "maxLength": 3, - "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" - }, - "country": { - "type": "string", - "maxLength": 3, - "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" - }, - "locationId": { - "type": "string", - "maxLength": 10, - "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" - }, - "address1": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "address2": { - "type": "string", - "maxLength": 13, - "description": "Address from where the vehicle was rented.\n" - }, - "location": { - "type": "string", - "maxLength": 38, - "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" - } - } - }, - "agreementNumber": { - "type": "string", - "maxLength": 25, - "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" - }, - "odometerReading": { - "type": "string", - "maxLength": 8, - "description": "Odometer reading at time of vehicle rental.\n" - }, - "vehicleIdentificationNumber": { - "type": "string", - "maxLength": 20, - "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" - }, - "companyId": { - "type": "string", - "maxLength": 12, - "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" - }, - "numberOfAdditionalDrivers": { - "type": "string", - "maxLength": 1, - "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" - }, - "driverAge": { - "type": "string", - "maxLength": 3, - "description": "Age of the driver renting the vehicle.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 2, - "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" - }, - "vehicleMake": { - "type": "string", - "maxLength": 10, - "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" - }, - "vehicleModel": { - "type": "string", - "maxLength": 10, - "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" - }, - "timePeriod": { - "type": "string", - "maxLength": 7, - "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" - }, - "commodityCode": { - "type": "string", - "maxLength": 15, - "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" - }, - "taxDetails": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" - }, - "applied": { - "type": "boolean", - "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" - }, - "exemptionCode": { - "type": "string", - "maxLength": 1, - "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" - }, - "taxType": { - "type": "string", - "maxLength": 10, - "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" - }, - "taxSummary": { - "type": "string", - "maxLength": 12, - "description": "Summary of all tax types\n" - } - } - }, - "insuranceAmount": { - "type": "string", - "maxLength": 12, - "description": "Insurance charges.\nField is conditional and can include decimal point.\n" - }, - "oneWayDropOffAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" - }, - "adjustedAmountIndicator": { - "type": "string", - "maxLength": 1, - "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" - }, - "adjustedAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" - }, - "fuelCharges": { - "type": "string", - "maxLength": 12, - "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "weeklyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" - }, - "dailyRentalRate": { - "type": "string", - "maxLength": 12, - "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" - }, - "ratePerMile": { - "type": "string", - "maxLength": 12, - "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" - }, - "mileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" - }, - "extraMileageCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" - }, - "lateFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" - }, - "towingCharge": { - "type": "string", - "maxLength": 4, - "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" - }, - "extraCharge": { - "type": "string", - "maxLength": 12, - "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" - }, - "gpsCharge": { - "type": "string", - "maxLength": 12, - "description": "Amount charged for renting a Global Positioning Service (GPS).\n" - }, - "phoneCharge": { - "type": "string", - "maxLength": 12, - "description": "Additional charges incurred for phone usage included on the total bill.\n" - }, - "parkingViolationCharge": { - "type": "string", - "maxLength": 12, - "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" - }, - "otherCharges": { - "type": "string", - "maxLength": 12, - "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" - } - } - }, - "lodging": { - "type": "object", - "properties": { - "checkInDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "checkOutDate": { - "type": "string", - "maxLength": 6, - "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" - }, - "room": { - "type": "array", - "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", - "items": { - "type": "object", - "properties": { - "dailyRate": { - "type": "string", - "maxLength": 8, - "description": "Daily cost of the room.\n" - }, - "numberOfNights": { - "type": "integer", - "minimum": 1, - "maximum": 9999, - "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" - } - } - } - }, - "smokingPreference": { - "type": "string", - "maxLength": 1, - "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" - }, - "numberOfRooms": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of rooms booked by the cardholder.\n" - }, - "numberOfGuests": { - "type": "integer", - "minimum": 1, - "maximum": 99, - "description": "Number of guests staying in the room.\n" - }, - "roomBedType": { - "type": "string", - "maxLength": 12, - "description": "Type of room, such as queen, king, or two doubles.\n" - }, - "roomTaxType": { - "type": "string", - "maxLength": 10, - "description": "Type of tax, such as tourist or hotel.\n" - }, - "roomRateType": { - "type": "string", - "maxLength": 12, - "description": "Type of rate, such as corporate or senior citizen.\n" - }, - "guestName": { - "type": "string", - "maxLength": 40, - "description": "Name of the guest under which the room is reserved.\n" - }, - "customerServicePhoneNumber": { - "type": "string", - "maxLength": 17, - "description": "Your toll-free customer service phone number.\n" - }, - "corporateClientCode": { - "type": "string", - "maxLength": 17, - "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" - }, - "additionalDiscountAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of an additional coupon or discount.\n" - }, - "roomLocation": { - "type": "string", - "maxLength": 10, - "description": "Location of room, such as lake view or ocean view.\n" - }, - "specialProgramCode": { - "type": "string", - "maxLength": 1, - "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" - }, - "totalTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount.\n" - }, - "prepaidCost": { - "type": "string", - "maxLength": 12, - "description": "Prepaid amount, such as a deposit.\n" - }, - "foodAndBeverageCost": { - "type": "string", - "maxLength": 12, - "description": "Cost for all food and beverages.\n" - }, - "roomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax for the room.\n" - }, - "adjustmentAmount": { - "type": "string", - "maxLength": 12, - "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" - }, - "phoneCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of telephone services.\n" - }, - "restaurantCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of restaurant purchases\n" - }, - "roomServiceCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of room service.\n" - }, - "miniBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of mini-bar purchases.\n" - }, - "laundryCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of laundry services.\n" - }, - "miscellaneousCost": { - "type": "string", - "maxLength": 12, - "description": "Miscellaneous costs.\n" - }, - "giftShopCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of gift shop purchases.\n" - }, - "movieCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of movies.\n" - }, - "healthClubCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of health club services.\n" - }, - "valetParkingCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of valet parking services.\n" - }, - "cashDisbursementCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of the cash that was disbursed plus any associated service fees\n" - }, - "nonRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of non-room purchases, such as meals and gifts.\n" - }, - "businessCenterCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of business center services.\n" - }, - "loungeBarCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of lounge and bar purchases.\n" - }, - "transportationCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of transportation services.\n" - }, - "gratuityAmount": { - "type": "string", - "maxLength": 12, - "description": "Gratuity.\n" - }, - "conferenceRoomCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of conference room services.\n" - }, - "audioVisualCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of audio visual services.\n" - }, - "banquestCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of banquet services.\n" - }, - "nonRoomTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax on non-room purchases.\n" - }, - "earlyCheckOutCost": { - "type": "string", - "maxLength": 12, - "description": "Service fee for early departure.\n" - }, - "internetAccessCost": { - "type": "string", - "maxLength": 12, - "description": "Cost of Internet access.\n" - } - } - }, - "transit": { - "type": "object", - "properties": { - "airline": { - "type": "object", - "properties": { - "bookingReferenceNumber": { - "type": "string", - "maxLength": 15, - "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" - }, - "carrierName": { - "type": "string", - "maxLength": 15, - "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "ticketIssuer": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 4, - "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" - }, - "name": { - "type": "string", - "maxLength": 20, - "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" - }, - "address": { - "type": "string", - "maxLength": 16, - "description": "Address of the company issuing the ticket.\n" - }, - "locality": { - "type": "string", - "maxLength": 18, - "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 18, - "description": "State in which transaction occured.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 15, - "description": "Zip code of the city in which transaction occured.\n" - }, - "country": { - "type": "string", - "maxLength": 18, - "description": "Country in which transaction occured.\n" - } - } - }, - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "checkDigit": { - "type": "string", - "maxLength": 1, - "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" - }, - "restrictedTicketIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "transactionType": { - "type": "integer", - "maxLength": 2, - "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" - }, - "extendedPaymentCode": { - "type": "string", - "maxLength": 3, - "description": "The field is not currently supported.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 42, - "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" - }, - "customerCode": { - "type": "string", - "maxLength": 40, - "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "documentType": { - "type": "string", - "maxLength": 1, - "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" - }, - "documentNumber": { - "type": "string", - "maxLength": 14, - "description": "The field is not currently supported.\n" - }, - "documentNumberOfParts": { - "type": "integer", - "maxLength": 4, - "description": "The field is not currently supported.\n" - }, - "invoiceNumber": { - "type": "string", - "maxLength": 25, - "description": "Invoice number for the airline transaction.\n" - }, - "invoiceDate": { - "type": "integer", - "maxLength": 8, - "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" - }, - "additionalCharges": { - "type": "string", - "maxLength": 20, - "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" - }, - "totalFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingSequence": { - "type": "string", - "maxLength": 2, - "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" - }, - "clearingCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" - }, - "totalClearingAmount": { - "type": "string", - "maxLength": 20, - "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationSystemCode": { - "type": "string", - "maxLength": 4, - "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" - }, - "processIdentifier": { - "type": "string", - "maxLength": 3, - "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" - }, - "ticketIssueDate": { - "type": "string", - "maxLength": 8, - "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" - }, - "electronicTicketIndicator": { - "type": "boolean", - "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" - }, - "originalTicketNumber": { - "type": "string", - "maxLength": 14, - "description": "Original ticket number when the transaction is for a replacement ticket.\n" - }, - "purchaseType": { - "type": "string", - "maxLength": 3, - "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 1, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" - }, - "ticketChangeIndicator": { - "type": "string", - "maxLength": 1, - "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" - }, - "planNumber": { - "type": "string", - "maxLength": 1, - "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" - }, - "arrivalDate": { - "type": "string", - "maxLength": 8, - "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" - }, - "restrictedTicketDesciption": { - "type": "string", - "maxLength": 20, - "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" - }, - "exchangeTicketAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" - }, - "exchangeTicketFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" - }, - "reservationType": { - "type": "string", - "maxLength": 32, - "description": "The field is not currently supported.\n" - }, - "boardingFeeAmount": { - "type": "string", - "maxLength": 12, - "description": "Boarding fee.\n" - }, - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "carrierCode": { - "type": "string", - "maxLength": 4, - "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "flightNumber": { - "type": "string", - "maxLength": 6, - "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "originatingAirportCode": { - "type": "string", - "maxLength": 5, - "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "class": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "stopoverIndicator": { - "type": "integer", - "maxLength": 1, - "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureDate": { - "type": "integer", - "maxLength": 8, - "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "destinationAirportCode": { - "type": "string", - "maxLength": 3, - "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "fareBasis": { - "type": "string", - "maxLength": 15, - "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" - }, - "departTaxAmount": { - "type": "string", - "maxLength": 12, - "description": "Amount of departure tax for this leg of the trip.\n" - }, - "conjunctionTicket": { - "type": "string", - "maxLength": 25, - "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "exchangeTicketNumber": { - "type": "string", - "maxLength": 25, - "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "couponNumber": { - "type": "string", - "maxLength": 1, - "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "departureTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "departureTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "arrivalTime": { - "type": "integer", - "maxLength": 4, - "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "arrivalTimeMeridian": { - "type": "string", - "maxLength": 1, - "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" - }, - "endorsementsRestrictions": { - "type": "string", - "maxLength": 20, - "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "totalFareAmount": { - "type": "string", - "maxLength": 15, - "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "feeAmount": { - "type": "string", - "maxLength": 12, - "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" - } - } - } - }, - "ancillaryInformation": { - "type": "object", - "properties": { - "ticketNumber": { - "type": "string", - "maxLength": 15, - "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "passengerName": { - "type": "string", - "maxLength": 20, - "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" - }, - "connectedTicketNumber": { - "type": "string", - "maxLength": 15, - "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "creditReasonIndicator": { - "type": "string", - "maxLength": 15, - "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" - }, - "service": { - "type": "array", - "items": { - "type": "object", - "properties": { - "categoryCode": { - "type": "string", - "maxLength": 4, - "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" - }, - "subCategoryCode": { - "type": "string", - "maxLength": 4, - "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" - } - } - } - } - } - } - } - } - } - } - } - }, - "promotionInformation": { - "type": "object", - "properties": { - "additionalCode": { - "type": "string", - "maxLength": 12, - "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" - }, - "code": { - "type": "string", - "maxLength": 12, - "description": "Code for a promotion or discount.\n" - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "12345678" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "Test", - "lastName": "test", - "phoneNumber": "9999999999", - "address1": "test", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "200", - "currency": "usd" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "expirationMonth": "03", - "type": "001" - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2CreditsPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - }, - "void": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n - COMPLETED (as in the case of PIN Debit Full Financial Credit)\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "creditAmountDetails": { - "type": "object", - "properties": { - "creditAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount that was credited to the cardholder\u2019s account.\n\nReturned by PIN debit credit.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "bankTransferOptions": { - "type": "object", - "properties": { - "settlementMethod": { - "type": "string", - "maxLength": 1, - "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "enhancedDataEnabled": { - "type": "boolean", - "description": "The possible values for the reply field are:\n- `true` : the airline data was included in the request to the processor.\n- `false` : the airline data was not included in the request to the processor.\n\nReturned by authorization, capture, or credit services.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - }, - "transactionId": { - "type": "string", - "maxLength": 18, - "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" - }, - "forwardedAcquirerCode": { - "type": "string", - "maxLength": 32, - "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" - }, - "merchantNumber": { - "type": "string", - "maxLength": 15, - "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "achVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 2, - "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - }, - "resultCodeRaw": { - "type": "string", - "maxLength": 10, - "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - } - } - }, - "networkTransactionId": { - "type": "string", - "description": "Same value as `processorInformation.transactionId`" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "correctedAccountNumber": { - "type": "string", - "maxLength": 17, - "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_account_number` or `ecp_credit_corrected_account_number` field descriptions in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "correctedRoutingNumber": { - "type": "string", - "maxLength": 9, - "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_routing_number` or `ecp_credit_corrected_routing_number` reply field descriptions in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 12, - "maxLength": 32 - }, - "state": { - "type": "string", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "invoiceDetails": { - "type": "object", - "properties": { - "level3TransmissionStatus": { - "type": "boolean", - "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" - } - } - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/credits/4963014324246004901546", - "method": "GET" - }, - "void": { - "href": "/pts/v2/credits/4963014324246004901546/voids", - "method": "POST" - } - }, - "id": "4963014324246004901546", - "submitTimeUtc": "2017-06-01T071712Z", - "status": "200", - "reconciliationId": "39570714X3E1LBQ8", - "statusInformation": { - "reason": "SUCCESS", - "message": "Successful transaction." - }, - "clientReferenceInformation": { - "code": "12345678" - }, - "creditAmountDetails": { - "currency": "usd", - "creditAmount": "200.00" - }, - "orderInformation": { - "amountDetails": { - "currency": "usd" - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2CreditsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2CreditsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Credit", - "sample-name": "Process Credit", - "value": { - "clientReferenceInformation": { - "code": "12345678" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "John", - "lastName": "Deo", - "phoneNumber": "9321499232", - "address1": "900 Metro Center Blvd", - "postalCode": "48104-2201", - "locality": "Foster City", - "administrativeArea": "CA", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "200", - "currency": "usd" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "expirationMonth": "03", - "type": "001" - } - } - } - }, - "example1": { - "summary": "Electronic Check Stand-Alone Credits", - "sample-name": "Process Credit ECheck Stand-Alone", - "value": { - "clientReferenceInformation": { - "code": "TC46125-1" - }, - "paymentInformation": { - "paymentType": { - "name": "CHECK" - }, - "bank": { - "account": { - "type": "C", - "number": "4100", - "checkNumber": "123456" - }, - "routingNumber": "071923284" - } - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100", - "currency": "USD" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "locality": "san francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - } - }, - "example2": { - "summary": "Service Fees Credit", - "sample-name": "Process Credit with Service Fees", - "value": { - "clientReferenceInformation": { - "code": "12345678" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "2325.00", - "currency": "usd", - "serviceFeeAmount": "30.0" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "number": "4111111111111111", - "expirationMonth": "03" - } - } - } - }, - "example3": { - "summary": "Credit with Customer Token Id", - "sample-name": "Credit with Customer Token Id", - "value": { - "clientReferenceInformation": { - "code": "12345678" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "200", - "currency": "usd" - } - }, - "paymentInformation": { - "customer": { - "id": "7500BB199B4270EFE05340588D0AFCAD" - } - } - }, - "parentTag": "Credit with Tokenization" - }, - "example4": { - "summary": "Credit with Customer, Payment Instrument and Shipping Address Token Id", - "sample-name": "Credit with Customer, Payment Instrument and Shipping Address Token Id", - "value": { - "clientReferenceInformation": { - "code": "12345678" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "200", - "currency": "usd" - } - }, - "paymentInformation": { - "customer": { - "id": "7500BB199B4270EFE05340588D0AFCAD" - }, - "paymentInstrument": { - "id": "7500BB199B4270EFE05340588D0AFCPI" - }, - "shippingAddress": { - "id": "7500BB199B4270EFE05340588D0AFCSA" - } - } - }, - "parentTag": "Credit with Tokenization" - }, - "example5": { - "summary": "Credit with Instrument Identifier Token Id", - "sample-name": "Credit with Instrument Identifier Token Id", - "value": { - "clientReferenceInformation": { - "code": "12345678" - }, - "orderInformation": { - "billTo": { - "country": "US", - "firstName": "John", - "lastName": "Deo", - "phoneNumber": "9321499232", - "address1": "900 Metro Center Blvd", - "postalCode": "48104-2201", - "locality": "Foster City", - "administrativeArea": "CA", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "200", - "currency": "usd" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2031", - "expirationMonth": "03", - "type": "001" - }, - "instrumentIdentifier": { - "id": "7500BB199B4270EFE05340588D0AFCII" - } - } - }, - "parentTag": "Credit with Tokenization" - }, - "example6": { - "summary": "Credit Using Bluefin PCI P2PE with Visa Platform Connect", - "sample-name": "Credit Using Bluefin PCI P2PE with Visa Platform Connect", - "value": { - "clientReferenceInformation": { - "code": "demomerchant" - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "catLevel": 1, - "entryMode": "keyed", - "terminalCapability": 2 - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "Deo", - "address1": "201 S. Division St.", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "firstName": "John", - "phoneNumber": 999999999, - "district": "MI", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": 2050, - "expirationMonth": 12 - }, - "fluidData": { - "descriptor": "Ymx1ZWZpbg==", - "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" - } - } - }, - "parentTag": "Card Present with Visa Platform Connect" - }, - "example7": { - "summary": "Credit Using Bluefin PCI P2PE for Card Present Enabled Acquirer", - "sample-name": "Credit Using Bluefin PCI P2PE for Card Present Enabled Acquirer", - "value": { - "clientReferenceInformation": { - "code": "demomerchant" - }, - "pointOfSaleInformation": { - "cardPresent": "Y", - "catLevel": 1, - "entryMode": "keyed", - "terminalCapability": 2 - }, - "processingInformation": { - "commerceIndicator": "retail" - }, - "orderInformation": { - "billTo": { - "country": "US", - "lastName": "Deo", - "address1": "201 S. Division St.", - "postalCode": "48104-2201", - "locality": "Ann Arbor", - "administrativeArea": "MI", - "firstName": "John", - "phoneNumber": 999999999, - "district": "MI", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "expirationYear": 2050, - "expirationMonth": 12 - }, - "fluidData": { - "descriptor": "Ymx1ZWZpbg==", - "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" - } - } - }, - "parentTag": "Card Present Enabled Acquirer" - } - } - } - }, - "/pts/v2/payments/{id}/voids": { - "post": { - "summary": "Void a Payment", - "description": "Void a Payment API is only used, if you have requested Authorization and Capture together in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call. Include the payment ID in the POST request to cancel the payment.\n", - "tags": [ - "void" - ], - "operationId": "voidPayment", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "voidPaymentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "transactionId": "" - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The payment ID returned from a previous payment request.", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2PaymentsVoidsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "transactionId": "909080801" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "voidAmountDetails": { - "currency": "usd", - "voidAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2PaymentsVoidsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - NOT_VOIDABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2PaymentsVoidsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Void a Payment", - "value": { - "clientReferenceInformation": { - "code": "test_void" - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/captures/{id}/voids": { - "post": { - "summary": "Void a Capture", - "description": "Refund a capture API is only used, if you have requested Capture independenlty using [/pts/v2/payments/{id}/captures](https://developer.cybersource.com/api-reference-assets/index.html#payments_capture) API call. Include the capture ID in the POST request to cancel the capture.\n", - "tags": [ - "void" - ], - "operationId": "voidCapture", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "voidCaptureRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "transactionId": "" - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The capture ID returned from a previous capture request.", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2CapturesVoidsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "transactionId": "909080801" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "voidAmountDetails": { - "currency": "usd", - "voidAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2CapturesVoidsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - NOT_VOIDABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2CapturesVoidsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Void a Capture", - "value": { - "clientReferenceInformation": { - "code": "test_void" - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments/{id}/captures", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/refunds/{id}/voids": { - "post": { - "summary": "Void a Refund", - "description": "Include the refund ID in the POST request to cancel the refund.", - "tags": [ - "void" - ], - "operationId": "voidRefund", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "voidRefundRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "transactionId": "" - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The refund ID returned from a previous refund request.", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2RefundsVoidsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "transactionId": "909080801" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "voidAmountDetails": { - "currency": "usd", - "voidAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2RefundsVoidsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - NOT_VOIDABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2RefundsVoidsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Void a Refund", - "value": { - "clientReferenceInformation": { - "code": "test_void" - } - }, - "depends": { - "example": { - "path": "/pts/v2/payments/{id}/refunds", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/credits/{id}/voids": { - "post": { - "summary": "Void a Credit", - "description": "Include the credit ID in the POST request to cancel the credit.", - "tags": [ - "void" - ], - "operationId": "voidCredit", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "parameters": [ - { - "name": "voidCreditRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "transactionId": "" - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The credit ID returned from a previous credit request.", - "required": true, - "type": "string" - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2CreditsVoidsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "transactionId": "909080801" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "voidAmountDetails": { - "currency": "usd", - "voidAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2CreditsVoidsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - NOT_VOIDABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2CreditsVoidsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Void a Credit", - "value": { - "clientReferenceInformation": { - "code": "test_void" - } - }, - "depends": { - "example": { - "path": "/pts/v2/credits", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/pts/v2/voids/": { - "post": { - "summary": "Timeout Void", - "description": "This is to void a previous payment, capture, refund, or credit that merchant does not receive a reply(Mostly due to timeout). This is to void a previous payment, capture, refund, or credit that merchant does not receive a reply(Mostly due to Timeout). To use this feature/API, make sure to pass unique value to field - clientReferenceInformation -> transactionId in your payment, capture, refund, or credit API call and use same transactionId in this API request payload to reverse the payment.", - "tags": [ - "void" - ], - "operationId": "mitVoid", - "x-devcenter-metaData": { - "categoryTag": "Payments", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" - }, - "x-example": { - "example0": { - "summary": "Timeout void", - "value": { - "clientReferenceInformation": { - "transactionId": "" - } - } - } - }, - "parameters": [ - { - "name": "mitVoidRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "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.\n" - }, - "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "thirdPartyCertificationNumber": { - "type": "string", - "maxLength": 12, - "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" - } - } - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "subTypeName": { - "type": "string", - "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" - }, - "method": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n" - } - } - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "transactionId": "" - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2VoidsPost200Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" - }, - "originalTransactionAmount": { - "type": "string", - "description": "Amount of the original transaction." - }, - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/pts/v2/voids/4963015122056179201545", - "method": "GET" - } - }, - "id": "4963015122056179201545", - "submitTimeUtc": "2017-06-01T071832Z", - "status": "VOIDED", - "clientReferenceInformation": { - "transactionId": "909080801" - }, - "orderInformation": { - "amountDetails": { - "currency": "USD" - } - }, - "voidAmountDetails": { - "currency": "usd", - "voidAmount": "102.21" - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2VoidsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - NOT_VOIDABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2VoidsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/pts/v1/transaction-batches": { - "get": { - "summary": "Get a List of Batch Files", - "description": "Provide the search range", - "tags": [ - "TransactionBatches" - ], - "operationId": "getTransactionBatches", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Batches", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html" - }, - "x-queryParameterDefaults": { - "startTime": "2020-02-22T01:47:57.000Z", - "endTime": "2020-02-22T22:47:57.000Z" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", - "required": true, - "type": "string", - "format": "date-time" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "title": "ptsV1TransactionBatchesGet200Response", - "type": "object", - "properties": { - "transactionBatches": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier assigned to the batch file.", - "example": "psy8s1d", - "pattern": "^[a-zA-Z0-9_+-]*$", - "minLength": 1, - "maxLength": 8 - }, - "uploadDate": { - "type": "string", - "description": "Date when the batch template was update.", - "example": "2018-01-01" - }, - "completionDate": { - "type": "string", - "description": "The date when the batch template processing completed.", - "example": "2018-01-01" - }, - "transactionCount": { - "type": "integer", - "description": "Number of transactions in the transaction.", - "example": 7534 - }, - "acceptedTransactionCount": { - "type": "integer", - "description": "Number of transactions accepted.", - "example": 50013 - }, - "rejectedTransactionCount": { - "type": "string", - "description": "Number of transactions rejected.", - "example": 2508 - }, - "status": { - "type": "string", - "description": "The status of you batch template processing.", - "example": "Completed" - } - } - } - }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "/pts/v1/transaction-batches" - }, - "method": { - "type": "string", - "example": "GET" - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "400": { - "description": "Bad Request", - "schema": { - "title": "ptsV1TransactionBatchesGet400Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "401": { - "description": "Not Authorized", - "schema": { - "title": "ptsV1TransactionBatchesGet401Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "403": { - "description": "No Authenticated", - "schema": { - "title": "ptsV1TransactionBatchesGet403Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "404": { - "description": "No Reports Found", - "schema": { - "title": "ptsV1TransactionBatchesGet404Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "500": { - "description": "Bad Gateway", - "schema": { - "title": "ptsV1TransactionBatchesGet500Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of status" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above." - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - } - } - } - }, - "/pts/v1/transaction-batches/{id}": { - "get": { - "summary": "Get Individual Batch File", - "description": "Provide the search range", - "tags": [ - "TransactionBatches" - ], - "operationId": "getTransactionBatchId", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Batches", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html" - }, - "x-depends": { - "example": { - "path": "/pts/v1/transaction-batches", - "verb": "get", - "exampleId": "Get a list of batch files" - }, - "fieldMapping": [ - { - "sourceField": "transactionBatches[0].id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "id", - "in": "path", - "description": "The batch id assigned for the template.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "title": "ptsV1TransactionBatchesIdGet200Response", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier assigned to the batch file.", - "example": "psy8s1d", - "pattern": "^[a-zA-Z0-9_+-]*$", - "minLength": 1, - "maxLength": 8 - }, - "uploadDate": { - "type": "string", - "description": "Date when the batch template was update.", - "example": "2018-01-01" - }, - "completionDate": { - "type": "string", - "description": "The date when the batch template processing completed.", - "example": "2018-01-01" - }, - "transactionCount": { - "type": "integer", - "description": "Number of transactions in the transaction.", - "example": 7534 - }, - "acceptedTransactionCount": { - "type": "integer", - "description": "Number of transactions accepted.", - "example": 50013 - }, - "rejectedTransactionCount": { - "type": "string", - "description": "Number of transactions rejected.", - "example": 2508 - }, - "status": { - "type": "string", - "description": "The status of you batch template processing.", - "example": "Completed" - }, - "_links": { - "type": "object", - "properties": { - "transactions": { - "type": "array", - "items": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "Self link for this request", - "example": "/tss/v2/transactions/5289798134206292501013" - }, - "method": { - "type": "string" - } - } - } - } - } - } - }, - "type": "object" - } - }, - "400": { - "description": "Bad Request", - "schema": { - "title": "ptsV1TransactionBatchesGet400Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "401": { - "description": "Not Authorized", - "schema": { - "title": "ptsV1TransactionBatchesGet401Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "403": { - "description": "No Authenticated", - "schema": { - "title": "ptsV1TransactionBatchesGet403Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "404": { - "description": "No Reports Found", - "schema": { - "title": "ptsV1TransactionBatchesGet404Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "502": { - "description": "Bad Gateway", - "schema": { - "title": "ptsV1TransactionBatchesGet502Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of status" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above." - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - } - } - } - }, - "/pts/v1/transaction-batch-details/{id}": { - "get": { - "tags": [ - "TransactionBatches" - ], - "summary": "Get Transaction Details for a given Batch Id", - "description": "Provides real-time detailed status information about the transactions that you previously uploaded in the Business Center or processed with the Offline Transaction File Submission service.\n", - "operationId": "getTransactionBatchDetails", - "x-streaming": true, - "x-devcenter-metaData": { - "categoryTag": "Transaction_Batches", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "text/csv", - "application/xml", - "text/vnd.cybersource.map-csv" - ] - } - }, - "x-queryParameterDefaults": { - "uploadDate": "2019-08-30", - "status": "Rejected" - }, - "x-depends": { - "example": { - "path": "/pts/v1/transaction-batches/{id}", - "verb": "get", - "exampleId": "Get individual batch file" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - }, - "produces": [ - "text/csv", - "application/xml", - "text/vnd.cybersource.map-csv" - ], - "parameters": [ - { - "name": "id", - "in": "path", - "description": "The batch id assigned for the template.", - "required": true, - "type": "string" - }, - { - "name": "uploadDate", - "in": "query", - "description": "Date in which the original batch file was uploaded. Date must be in ISO-8601 format.\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n**Example date format:**\n - yyyy-MM-dd\n", - "required": false, - "type": "string", - "format": "date" - }, - { - "name": "status", - "in": "query", - "description": "Allows you to filter by rejected response.\n\nValid values:\n- Rejected\n", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK", - "examples": { - "text/vnd.cybersource.map-csv": "merchantID=testrest,batchID=01lzdah4\n\nmerchantReferenceCode=7vvc3645,purchaseTotals_currency=GBP,ccAuthReversalReply_processorResponse=00,ccAuthReversalReply_requestDateTime=2019-03-08 10:50:23 GMT,ccAuthReversalReply_amount=8.00,decision=ACCEPT,requestID=5520424090516341303098,merchantReferenceCode=7Y3E112F,requestToken=Ahj//wSTLNz0kRV6lzumGxkyXTozqrWfMbTWSi9xQvvlQFRe4pB8qekDsTiONhk0kyxdfAw3sUHMmWbkw9bmwBX9cAAA+Rh4,reasonCode=100,ccAuthReversalReply_reasonCode=100\n", - "text/csv": "Submission Date/Time,Submission File ID,link_to_request,request_id,transaction_date,cybs_mid,processor_mid,hierarchy_id,trans_ref_number,merchant_ref_number,transaction_type,amount,transaction_amount_currency,payment_method,payment_type,account_suffix,decision,reason_code,reserved,auth_trans_ref_number,auth_date,auth_request_id,auth_amount,auth_currency,auth_code,auth_reason_code,auth_rcode,merchant_defined_data1,merchant_defined_data2,merchant_defined_data3,merchant_defined_data4\n2019-03-08 10:50:23 GMT,01lzdah4,5520424090516341303098,5520424090516341303098,2019-03-08 10:53:29 GMT,testrest,,101011000871000110003,51512455,4,ics_auth,8.00,GBP ,credit card,Visa,1111,,100,,,,5520424090516341303098,,,,,,3817,,,\n", - "application/xml": "\n\n\n \n 5520424090516341303098\n 5520424090516341303098\n 2019-03-08 10:53:29 GMT\n pa_gpn\n 101011000871000110003\n 51512455\n 7vvc3645\n ics_auth\n 8.00\n GBP\n credit card\n Visa\n 1111\n 100\n \n 5520424090516341303098\n \n 3817\n \n\n" - } - }, - "400": { - "description": "Bad Request", - "schema": { - "title": "ptsV1TransactionBatchDetailsGet400Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "401": { - "description": "Not Authorized", - "schema": { - "title": "ptsV1TransactionBatchDetailsGet401Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "403": { - "description": "No Authenticated", - "schema": { - "title": "ptsV1TransactionBatchDetailsGet403Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "404": { - "description": "No Reports Found", - "schema": { - "title": "ptsV1TransactionBatchDetailsGet404Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string" - }, - "message": { - "type": "string" - }, - "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.\n" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above.\n" - } - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "502": { - "description": "Bad Gateway", - "schema": { - "title": "ptsV1TransactionBatchDetailsGet502Response", - "type": "object", - "properties": { - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of status" - }, - "message": { - "type": "string", - "description": "The detailed message related to the status and reason listed above." - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - } - } - } - }, - "/tms/v2/customers": { - "post": { - "summary": "Create a Customer", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "postCustomerRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Payment Instruments.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "shippingAddress": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Addresses.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Customer Token." - }, - "objectInformation": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Name or title of the customer.\n", - "maxLength": 60 - }, - "comment": { - "type": "string", - "description": "Comments that you can make about the customer.\n", - "maxLength": 150 - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerID": { - "type": "string", - "description": "Your identifier for the customer.\n", - "maxLength": 100 - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's primary email address, including the full domain name.\n" - } - } - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Client-generated order reference or tracking number.\n", - "maxLength": 50 - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "Object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" - }, - "value": { - "type": "string", - "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", - "maxLength": 100 - } - } - } - }, - "defaultPaymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Payment Instrument\n" - } - } - }, - "defaultShippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Shipping Address\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Customer token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Customer token.\n", - "properties": { - "defaultPaymentInstrument": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - }, - "defaultShippingAddress": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Customer" - ], - "operationId": "postCustomer", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "201": { - "description": "A new Customer has been created.", - "headers": { - "Location": { - "description": "Location of the Customer.", - "type": "string" - }, - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "title": "TmsV2CustomersResponse", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Payment Instruments.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "shippingAddress": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Addresses.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Customer Token." - }, - "objectInformation": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Name or title of the customer.\n", - "maxLength": 60 - }, - "comment": { - "type": "string", - "description": "Comments that you can make about the customer.\n", - "maxLength": 150 - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerID": { - "type": "string", - "description": "Your identifier for the customer.\n", - "maxLength": 100 - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's primary email address, including the full domain name.\n" - } - } - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Client-generated order reference or tracking number.\n", - "maxLength": 50 - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "Object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" - }, - "value": { - "type": "string", - "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", - "maxLength": 100 - } - } - } - }, - "defaultPaymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Payment Instrument\n" - } - } - }, - "defaultShippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Shipping Address\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Customer token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Customer token.\n", - "properties": { - "defaultPaymentInstrument": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - }, - "defaultShippingAddress": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "409": { - "description": "Conflict. The token is linked to a Payment Instrument.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Customer", - "value": { - "buyerInformation": { - "merchantCustomerID": "Your customer identifier", - "email": "test@cybs.com" - }, - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "merchantDefinedInformation": [ - { - "name": "data1", - "value": "Your customer data" - } - ] - } - } - } - } - }, - "/tms/v2/customers/{customerTokenId}": { - "get": { - "summary": "Retrieve a Customer", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Customer" - ], - "operationId": "getCustomer", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "customerTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Customer associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Payment Instruments.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "shippingAddress": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Addresses.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Customer Token." - }, - "objectInformation": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Name or title of the customer.\n", - "maxLength": 60 - }, - "comment": { - "type": "string", - "description": "Comments that you can make about the customer.\n", - "maxLength": 150 - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerID": { - "type": "string", - "description": "Your identifier for the customer.\n", - "maxLength": 100 - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's primary email address, including the full domain name.\n" - } - } - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Client-generated order reference or tracking number.\n", - "maxLength": 50 - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "Object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" - }, - "value": { - "type": "string", - "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", - "maxLength": 100 - } - } - } - }, - "defaultPaymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Payment Instrument\n" - } - } - }, - "defaultShippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Shipping Address\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Customer token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Customer token.\n", - "properties": { - "defaultPaymentInstrument": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - }, - "defaultShippingAddress": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "patch": { - "summary": "Update a Customer", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "if-match", - "in": "header", - "description": "Contains an ETag value from a GET request to make the request conditional.", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "patchCustomerRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Payment Instruments.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "shippingAddress": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Addresses.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Customer Token." - }, - "objectInformation": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Name or title of the customer.\n", - "maxLength": 60 - }, - "comment": { - "type": "string", - "description": "Comments that you can make about the customer.\n", - "maxLength": 150 - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerID": { - "type": "string", - "description": "Your identifier for the customer.\n", - "maxLength": 100 - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's primary email address, including the full domain name.\n" - } - } - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Client-generated order reference or tracking number.\n", - "maxLength": 50 - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "Object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" - }, - "value": { - "type": "string", - "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", - "maxLength": 100 - } - } - } - }, - "defaultPaymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Payment Instrument\n" - } - } - }, - "defaultShippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Shipping Address\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Customer token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Customer token.\n", - "properties": { - "defaultPaymentInstrument": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - }, - "defaultShippingAddress": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Customer" - ], - "operationId": "patchCustomer", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "customerTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Customer associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Payment Instruments.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "shippingAddress": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Addresses.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Customer Token." - }, - "objectInformation": { - "type": "object", - "properties": { - "title": { - "type": "string", - "description": "Name or title of the customer.\n", - "maxLength": 60 - }, - "comment": { - "type": "string", - "description": "Comments that you can make about the customer.\n", - "maxLength": 150 - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerID": { - "type": "string", - "description": "Your identifier for the customer.\n", - "maxLength": 100 - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's primary email address, including the full domain name.\n" - } - } - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "Client-generated order reference or tracking number.\n", - "maxLength": 50 - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "Object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" - }, - "value": { - "type": "string", - "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", - "maxLength": 100 - } - } - } - }, - "defaultPaymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Payment Instrument\n" - } - } - }, - "defaultShippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the Customers default Shipping Address\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Customer token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Customer token.\n", - "properties": { - "defaultPaymentInstrument": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - }, - "defaultShippingAddress": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "412": { - "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "conflict", - "message": "Action cannot be performed as the if-match header value does not match the token etag" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Update Customer", - "value": { - "buyerInformation": { - "merchantCustomerID": "Your customer identifier", - "email": "test@cybs.com" - }, - "clientReferenceInformation": { - "code": "TC50171_3" - }, - "merchantDefinedInformation": [ - { - "name": "data1", - "value": "Your customer data" - } - ] - } - }, - "example1": { - "summary": "Update Customers default Payment Instrument", - "value": { - "defaultPaymentInstrument": { - "id": "paymentInstrumentTokenId" - } - } - }, - "example2": { - "summary": "Update Customers default Shipping Address", - "value": { - "defaultShippingAddress": { - "id": "shippingAddressTokenId" - } - } - } - } - }, - "delete": { - "summary": "Delete a Customer", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Customer" - ], - "operationId": "deleteCustomer", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "customerTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "204": { - "description": "The request is fulfilled but does not need to return a body", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v2/customers/{customerTokenId}/shipping-addresses": { - "post": { - "summary": "Create a Customer Shipping Address", - "description": "Include an existing TMS Customer token id in the request URI.\n* A Customer token can be created by calling: **POST */tms/v2/customers***\n", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "postCustomerShippingAddressRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - ], - "tags": [ - "Customer Shipping Address" - ], - "operationId": "postCustomerShippingAddress", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "customerTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "201": { - "description": "A new Shipping Address has been created.", - "headers": { - "Location": { - "description": "Location of the Shipping Address.", - "type": "string" - }, - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "409": { - "description": "Conflict. The token is linked to a Payment Instrument.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Customer Default Shipping Address", - "value": { - "default": "true", - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - }, - "example1": { - "summary": "Create Customer Non-Default Shipping Address", - "value": { - "default": "false", - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - } - } - }, - "get": { - "summary": "List Shipping Addresses for a Customer", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "offset", - "in": "query", - "description": "Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0.", - "required": false, - "type": "integer", - "format": "int64", - "default": 0, - "minimum": 0 - }, - { - "name": "limit", - "in": "query", - "description": "The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100.", - "required": false, - "type": "integer", - "format": "int64", - "default": 20, - "minimum": 1, - "maximum": 100 - } - ], - "tags": [ - "Customer Shipping Address" - ], - "operationId": "getCustomerShippingAddressesList", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "customerTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns all existing Shipping Addresses associated with the supplied token id.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - }, - "X-Total-Count": { - "description": "The total number of Shipping Addresses associated with the Customer.", - "type": "string" - } - }, - "schema": { - "title": "ShippingAddressListForCustomer", - "type": "object", - "readOnly": true, - "description": "A paginated container of Shipping Addresses.\n", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the current page.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" - } - } - }, - "first": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the first page.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" - } - } - }, - "prev": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the previous page.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" - } - } - }, - "next": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the next page.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" - } - } - }, - "last": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the last page.\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" - } - } - } - } - }, - "offset": { - "type": "integer", - "readOnly": true, - "default": 0, - "example": 0, - "description": "The offset parameter supplied in the request." - }, - "limit": { - "type": "integer", - "readOnly": true, - "default": 20, - "example": 20, - "description": "The limit parameter supplied in the request." - }, - "count": { - "type": "integer", - "readOnly": true, - "example": 1, - "description": "The number of Shipping Addresses returned in the array." - }, - "total": { - "type": "integer", - "readOnly": true, - "example": 1, - "description": "The total number of Shipping Addresses associated with the Customer." - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Shipping Address Resources.\n", - "properties": { - "shippingAddresses": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v2/customers/{customerTokenId}/shipping-addresses/{shippingAddressTokenId}": { - "get": { - "summary": "Retrieve a Customer Shipping Address", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "shippingAddressTokenId", - "in": "path", - "description": "The TokenId of an shipping address.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Customer Shipping Address" - ], - "operationId": "getCustomerShippingAddress", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/shipping-addresses", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "shippingAddressTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Shipping Address associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "patch": { - "summary": "Update a Customer Shipping Address", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "shippingAddressTokenId", - "in": "path", - "description": "The TokenId of an shipping address.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "if-match", - "in": "header", - "description": "Contains an ETag value from a GET request to make the request conditional.", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "patchCustomerShippingAddressRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - } - ], - "tags": [ - "Customer Shipping Address" - ], - "operationId": "patchCustomersShippingAddress", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-example": { - "example0": { - "summary": "Update Customer Default Shipping Address", - "value": { - "shipTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - } - } - } - }, - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/shipping-addresses", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "shippingAddressTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Shipping Address associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customers Shipping Address\n", - "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Shipping Address Token." - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Company associated with the shipping address.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", - "maxLength": 2 - }, - "email": { - "type": "string", - "maxLength": 320, - "description": "Email associated with the shipping address.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Shipping Address token." - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "412": { - "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "conflict", - "message": "Action cannot be performed as the if-match header value does not match the token etag" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete a Customer Shipping Address", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "shippingAddressTokenId", - "in": "path", - "description": "The TokenId of an shipping address.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Customer Shipping Address" - ], - "operationId": "deleteCustomerShippingAddress", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/shipping-addresses", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "shippingAddressTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "204": { - "description": "The request is fulfilled but does not need to return a body", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v2/customers/{customerTokenId}/payment-instruments": { - "post": { - "summary": "Create a Customer Payment Instrument", - "description": "Include an existing TMS Customer & Instrument Identifier token id in the request.\n* A Customer token can be created by calling: **POST */tms/v2/customers***\n* An Instrument Identifier token can be created by calling: **POST */tms/v1/instrumentidentifiers***\n", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "postCustomerPaymentInstrumentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Customer Payment Instrument" - ], - "operationId": "postCustomerPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "customerTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "201": { - "description": "A new Payment Instrument has been created.", - "headers": { - "Location": { - "description": "Location of the Payment Instrument.", - "type": "string" - }, - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "409": { - "description": "Conflict. The token is linked to a Payment Instrument.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Customer Default Payment Instrument (Card)", - "value": { - "default": "true", - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "type": "001" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - }, - "example1": { - "summary": "Create Customer Non-Default Payment Instrument (Card)", - "value": { - "default": "false", - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "type": "001" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - }, - "example2": { - "summary": "Create Customer Payment Instrument (Bank Account)", - "value": { - "bankAccount": { - "type": "savings" - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD", - "dateOfBirth": "2000-12-13", - "personalIdentification": [ - { - "id": "57684432111321", - "type": "driver license", - "issuedBy": { - "administrativeArea": "CA" - } - } - ] - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "processingInformation": { - "bankTransferOptions": { - "SECCode": "WEB" - } - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - }, - "example3": { - "summary": "Create Customer Payment Instrument (Pinless Debit)", - "value": { - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "type": "001", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2020", - "useAs": "pinless debit" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - } - } - }, - "get": { - "summary": "List Payment Instruments for a Customer", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "offset", - "in": "query", - "description": "Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0.", - "required": false, - "type": "integer", - "format": "int64", - "default": 0, - "minimum": 0 - }, - { - "name": "limit", - "in": "query", - "description": "The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100.", - "required": false, - "type": "integer", - "format": "int64", - "default": 20, - "minimum": 1, - "maximum": 100 - } - ], - "tags": [ - "Customer Payment Instrument" - ], - "operationId": "getCustomerPaymentInstrumentsList", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns all existing Payment Instruments associated with the supplied token id.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - }, - "X-Total-Count": { - "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier.", - "type": "string" - } - }, - "schema": { - "title": "PaymentInstrumentList", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the current page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "first": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the first page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "prev": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the previous page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "next": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the next page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "last": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the last page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - } - } - }, - "offset": { - "type": "integer", - "readOnly": true, - "default": 0, - "example": 0, - "description": "The offset parameter supplied in the request." - }, - "limit": { - "type": "integer", - "readOnly": true, - "default": 20, - "example": 20, - "description": "The limit parameter supplied in the request." - }, - "count": { - "type": "integer", - "readOnly": true, - "example": 1, - "description": "The number of Payment Instruments returned in the array." - }, - "total": { - "type": "integer", - "readOnly": true, - "example": 1, - "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier." - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Payment Instrument Resources.\n", - "properties": { - "paymentInstruments": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v2/customers/{customerTokenId}/payment-instruments/{paymentInstrumentTokenId}": { - "get": { - "summary": "Retrieve a Customer Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "paymentInstrumentTokenId", - "in": "path", - "description": "The TokenId of a payment instrument.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Customer Payment Instrument" - ], - "operationId": "getCustomerPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Payment Instrument associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "patch": { - "summary": "Update a Customer Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "paymentInstrumentTokenId", - "in": "path", - "description": "The TokenId of a payment instrument.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "if-match", - "in": "header", - "description": "Contains an ETag value from a GET request to make the request conditional.", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "patchCustomerPaymentInstrumentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Customer Payment Instrument" - ], - "operationId": "patchCustomersPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Payment Instrument associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "412": { - "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "conflict", - "message": "Action cannot be performed as the if-match header value does not match the token etag" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete a Customer Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "customerTokenId", - "in": "path", - "description": "The TokenId of a customer.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "paymentInstrumentTokenId", - "in": "path", - "description": "The TokenId of a payment instrument.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Customer Payment Instrument" - ], - "operationId": "deleteCustomerPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "204": { - "description": "The request is fulfilled but does not need to return a body", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v1/paymentinstruments": { - "post": { - "summary": "Create a Payment Instrument", - "description": "Include an existing TMS Instrument Identifier id in the request body.\n* An Instrument Identifier token can be created by calling: **POST */tms/v1/instrumentidentifiers***\n", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "postPaymentInstrumentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Payment Instrument" - ], - "operationId": "postPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "201": { - "description": "Returns an existing Payment Instrument associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Payment Instrument (Card)", - "value": { - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "type": "visa" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - }, - "example1": { - "summary": "Create Payment Instrument (Bank Account)", - "value": { - "bankAccount": { - "type": "savings" - }, - "buyerInformation": { - "companyTaxID": "12345", - "currency": "USD", - "dateOfBirth": "2000-12-13", - "personalIdentification": [ - { - "id": "57684432111321", - "type": "driver license", - "issuedBy": { - "administrativeArea": "CA" - } - } - ] - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "processingInformation": { - "bankTransferOptions": { - "SECCode": "WEB" - } - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - }, - "example2": { - "summary": "Create Payment Instrument (Pinless Debit)", - "value": { - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "type": "visa", - "issueNumber": "01", - "startMonth": "01", - "startYear": "2020", - "useAs": "pinless debit" - }, - "billTo": { - "firstName": "John", - "lastName": "Doe", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "test@cybs.com", - "phoneNumber": "4158880000" - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - } - } - } - }, - "/tms/v1/paymentinstruments/{paymentInstrumentTokenId}": { - "get": { - "summary": "Retrieve a Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "paymentInstrumentTokenId", - "in": "path", - "description": "The TokenId of a payment instrument.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "tags": [ - "Payment Instrument" - ], - "operationId": "getPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/paymentinstruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Payment Instrument associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "patch": { - "summary": "Update a Payment Instrument", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "paymentInstrumentTokenId", - "in": "path", - "description": "The TokenId of a payment instrument.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "if-match", - "in": "header", - "description": "Contains an ETag value from a GET request to make the request conditional.", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "patchPaymentInstrumentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - } - ], - "tags": [ - "Payment Instrument" - ], - "operationId": "patchPaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/paymentinstruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Payment Instrument associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "412": { - "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "conflict", - "message": "Action cannot be performed as the if-match header value does not match the token etag" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Update Payment Instrument", - "value": { - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "type": "visa" - }, - "billTo": { - "firstName": "Jack", - "lastName": "Smith", - "company": "CyberSource", - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US", - "email": "updatedemail@cybs.com", - "phoneNumber": "4158888674" - }, - "instrumentIdentifier": { - "id": "instrumentIdentifierTokenId" - } - } - } - } - }, - "delete": { - "summary": "Delete a Payment Instrument", - "tags": [ - "Payment Instrument" - ], - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "paymentInstrumentTokenId", - "in": "path", - "description": "The TokenId of a payment instrument.", - "required": true, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "operationId": "deletePaymentInstrument", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/paymentinstruments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "paymentInstrumentTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "204": { - "description": "The request is fulfilled but does not need to return a body", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v1/instrumentidentifiers": { - "post": { - "summary": "Create an Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "postInstrumentIdentifierRequest", - "in": "body", - "description": "Specify either a Card, Bank Account or Enrollable Card", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "postInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "Returns an existing Instrument Identifier associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - }, - "201": { - "description": "A new Instrument Identifier has been created.", - "headers": { - "Location": { - "description": "Location of the Instrument Identifier.", - "type": "string" - }, - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create Instrument Identifier (Card)", - "value": { - "card": { - "number": "4111111111111111" - } - } - }, - "example1": { - "summary": "Create Instrument Identifier (Bank Account)", - "value": { - "bankAccount": { - "number": "4100", - "routingNumber": "071923284" - } - } - }, - "example2": { - "summary": "Create Instrument Identifier (Card & Enroll for Network Token)", - "value": { - "type": "enrollable card", - "card": { - "number": "4111111111111111", - "expirationMonth": "12", - "expirationYear": "2031", - "securityCode": "123" - }, - "billTo": { - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US" - } - } - } - } - } - }, - "/tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}": { - "get": { - "summary": "Retrieve an Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "instrumentIdentifierTokenId", - "in": "path", - "description": "The TokenId of a Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 12, - "maxLength": 32 - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "getInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/instrumentidentifiers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "instrumentIdentifierTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Instrument Identifier associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - }, - "patch": { - "summary": "Update an Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "instrumentIdentifierTokenId", - "in": "path", - "description": "The TokenId of a Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 12, - "maxLength": 32 - }, - { - "name": "if-match", - "in": "header", - "description": "Contains an ETag value from a GET request to make the request conditional.", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "patchInstrumentIdentifierRequest", - "in": "body", - "description": "Specify the previous transaction ID to update.", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "patchInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/instrumentidentifiers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "instrumentIdentifierTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns an existing Instrument Identifier associated with the supplied token id.", - "headers": { - "ETag": { - "description": "An ETag is an identifier assigned to a specific version of a resource.", - "type": "string" - }, - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "412": { - "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "conflict", - "message": "Action cannot be performed as the if-match header value does not match the token etag" - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Update Instrument Identifier previousTransactionId", - "value": { - "processingInformation": { - "authorizationOptions": { - "initiator": { - "merchantInitiatedTransaction": { - "previousTransactionId": "123456789012345" - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete an Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "instrumentIdentifierTokenId", - "in": "path", - "description": "The TokenId of a Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 12, - "maxLength": 32 - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "deleteInstrumentIdentifier", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/instrumentidentifiers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "instrumentIdentifierTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "204": { - "description": "The request is fulfilled but does not need to return a body", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "409": { - "description": "Conflict. The token is linked to a Payment Instrument.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}/paymentinstruments": { - "get": { - "summary": "List Payment Instruments for an Instrument Identifier", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "instrumentIdentifierTokenId", - "in": "path", - "description": "The TokenId of a Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 12, - "maxLength": 32 - }, - { - "name": "offset", - "in": "query", - "description": "Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0.", - "required": false, - "type": "integer", - "format": "int64", - "default": 0, - "minimum": 0 - }, - { - "name": "limit", - "in": "query", - "description": "The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100.", - "required": false, - "type": "integer", - "format": "int64", - "default": 20, - "minimum": 1, - "maximum": 100 - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "getInstrumentIdentifierPaymentInstrumentsList", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/instrumentidentifiers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "instrumentIdentifierTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Returns all existing Payment Instruments associated with the supplied token id.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally-unique ID associated with your request.", - "type": "string" - }, - "X-Total-Count": { - "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier.", - "type": "string" - } - }, - "schema": { - "title": "PaymentInstrumentList", - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the current page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "first": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the first page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "prev": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the previous page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "next": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the next page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - }, - "last": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the last page.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" - } - } - } - } - }, - "offset": { - "type": "integer", - "readOnly": true, - "default": 0, - "example": 0, - "description": "The offset parameter supplied in the request." - }, - "limit": { - "type": "integer", - "readOnly": true, - "default": 20, - "example": 20, - "description": "The limit parameter supplied in the request." - }, - "count": { - "type": "integer", - "readOnly": true, - "example": 1, - "description": "The number of Payment Instruments returned in the array." - }, - "total": { - "type": "integer", - "readOnly": true, - "example": 1, - "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier." - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Payment Instrument Resources.\n", - "properties": { - "paymentInstruments": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Payment Instrument.\n", - "example": "/tms/v2/customers/1234567890123456789/payment-instruments" - } - } - }, - "customer": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Customer.\n", - "example": "/tms/v2/customers/1234567890123456789" - } - } - } - } - }, - "id": { - "type": "string", - "minLength": 1, - "maxLength": 32, - "description": "The id of the Payment Instrument Token." - }, - "object": { - "type": "string", - "readOnly": true, - "example": "paymentInstrument", - "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" - }, - "default": { - "type": "boolean", - "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "bankAccount": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 18, - "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "type": { - "type": "string", - "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 2, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "useAs": { - "type": "string", - "example": "pinless debit", - "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" - }, - "tokenizedInformation": { - "type": "object", - "properties": { - "requestorID": { - "type": "string", - "maxLength": 11, - "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" - }, - "transactionType": { - "type": "string", - "maxLength": 1, - "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "companyTaxID": { - "type": "string", - "maxLength": 9, - "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" - }, - "dateOfBirth": { - "type": "string", - "format": "date", - "example": "1960-12-30", - "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type.\n" - }, - "type": { - "type": "string", - "description": "The type of the identification.\n\nValid values:\n - driver license\n" - }, - "issuedBy": { - "type": "object", - "properties": { - "administrativeArea": { - "type": "string", - "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", - "maxLength": 20 - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "billPaymentProgramEnabled": { - "type": "boolean", - "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "SECCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "alternateName": { - "type": "string", - "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", - "maxLength": 13 - } - } - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "minLength": 12, - "maxLength": 32, - "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Payment Instrument token.\n" - } - } - }, - "_embedded": { - "type": "object", - "readOnly": true, - "description": "Additional resources for the Payment Instrument token.\n", - "properties": { - "instrumentIdentifier": { - "readOnly": true, - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - } - } - }, - "/tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}/enrollment": { - "post": { - "summary": "Enroll an Instrument Identifier for Network Tokenization", - "parameters": [ - { - "name": "profile-id", - "in": "header", - "description": "The id of a profile containing user specific TMS configuration.", - "required": false, - "type": "string", - "minLength": 36, - "maxLength": 36, - "x-hide-field": true - }, - { - "name": "instrumentIdentifierTokenId", - "in": "path", - "description": "The TokenId of a Instrument Identifier.", - "required": true, - "type": "string", - "minLength": 12, - "maxLength": 32 - }, - { - "name": "postInstrumentIdentifierEnrollmentRequest", - "in": "body", - "description": "Specify Enrollable Card details", - "required": true, - "schema": { - "type": "object", - "properties": { - "_links": { - "type": "object", - "readOnly": true, - "properties": { - "self": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifier.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" - } - } - }, - "paymentInstruments": { - "type": "object", - "readOnly": true, - "properties": { - "href": { - "type": "string", - "readOnly": true, - "description": "Link to the Instrument Identifiers Payment Instruments.\n", - "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" - } - } - } - } - }, - "id": { - "type": "string", - "description": "The id of the Instrument Identifier Token.\n" - }, - "object": { - "type": "string", - "readOnly": true, - "example": "instrumentIdentifier", - "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" - }, - "type": { - "type": "string", - "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" - }, - "card": { - "type": "object", - "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "number": { - "type": "string", - "minLength": 12, - "maxLength": 19, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number.\n" - } - } - }, - "bankAccount": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", - "example": "visa" - }, - "state": { - "type": "string", - "readOnly": true, - "example": "ACTIVE", - "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" - }, - "number": { - "type": "string", - "readOnly": true, - "description": "The token requestors customer\u2019s payment network token\n" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" - }, - "cryptogram": { - "type": "string", - "readOnly": true, - "description": "Generated value used in conjunction with the network token for making a payment.\n", - "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" - }, - "card": { - "type": "object", - "readOnly": true, - "description": "The latest card details associated with the network token", - "properties": { - "suffix": { - "type": "string", - "readOnly": true, - "description": "The customer\u2019s latest payment card number suffix\n", - "example": "1111" - }, - "expirationMonth": { - "type": "string", - "readOnly": true, - "maxLength": 2, - "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" - }, - "expirationYear": { - "type": "string", - "readOnly": true, - "maxLength": 4, - "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" - } - } - } - } - }, - "issuer": { - "type": "object", - "readOnly": true, - "properties": { - "paymentAccountReference": { - "type": "string", - "readOnly": true, - "maxLength": 32, - "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "authorizationOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" - } - } - } - } - } - } - } - } - }, - "billTo": { - "type": "object", - "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Additional address information.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" - }, - "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" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" - } - } - }, - "metadata": { - "type": "object", - "readOnly": true, - "properties": { - "creator": { - "type": "string", - "readOnly": true, - "description": "The creator of the Instrument Identifier token." - } - } - } - } - } - } - ], - "tags": [ - "Instrument Identifier" - ], - "operationId": "postInstrumentIdentifierEnrollment", - "x-devcenter-metaData": { - "categoryTag": "Token_Management", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "x-depends": { - "example": { - "path": "/tms/v1/instrumentidentifiers", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "instrumentIdentifierTokenId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "202": { - "description": "The request has been accepted for processing, but the processing has not been completed.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "204": { - "description": "The request is fulfilled but does not need to return a body", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - } - }, - "400": { - "description": "Bad Request: e.g. A required header value could be missing.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "Invalid Customer request body": { - "errors": [ - { - "type": "invalidRequest", - "message": "Invalid HTTP Body" - } - ] - } - } - }, - "403": { - "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "403ForbiddenResponse", - "message": "Request not permitted" - } - ] - } - } - }, - "404": { - "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Token not found" - } - ] - } - } - }, - "410": { - "description": "Token Not Available. The token has been deleted.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique ID associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notAvailable", - "message": "Token not available." - } - ] - } - } - }, - "424": { - "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "notFound", - "message": "Profile not found" - } - ] - } - } - }, - "500": { - "description": "Unexpected error.", - "headers": { - "v-c-correlation-id": { - "description": "The mandatory correlation id passed by upstream (calling) system.", - "type": "string" - }, - "uniqueTransactionID": { - "description": "A globally unique id associated with your request.", - "type": "string" - } - }, - "examples": { - "application/json": { - "errors": [ - { - "type": "serverError", - "message": "Internal server error" - } - ] - } - }, - "schema": { - "type": "object", - "readOnly": true, - "properties": { - "errors": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "type": { - "type": "string", - "readOnly": true, - "description": "The type of error." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The detailed message related to the type stated above." - }, - "details": { - "type": "array", - "readOnly": true, - "items": { - "type": "object", - "readOnly": true, - "properties": { - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the field that caused the error." - }, - "location": { - "type": "string", - "readOnly": true, - "description": "The location of the field that caused the error." - } - } - } - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Enroll Instrument Identifier for Network Tokenization", - "value": { - "type": "enrollable card", - "card": { - "expirationMonth": "12", - "expirationYear": "2031", - "securityCode": "123" - }, - "billTo": { - "address1": "1 Market St", - "locality": "San Francisco", - "administrativeArea": "CA", - "postalCode": "94105", - "country": "US" - } - } - } - } - } - }, - "/flex/v1/keys": { - "x-name": "Generate Key", - "x-description": "Generate a one-time use public key and key ID to encrypt the card number in the follow-on Tokenize Card request. The key used to encrypt the card number on the cardholder\u2019s device or browser is valid for 15 minutes and must be used to verify the signature in the response message. CyberSource recommends creating a new key for each order. Generating a key is an authenticated request initiated from your servers, prior to requesting to tokenize the card data from your customer\u2019s device or browser.", - "post": { - "tags": [ - "Key Generation" - ], - "summary": "Generate Key", - "description": "Generate a one-time use public key and key ID to encrypt the card number in the follow-on Tokenize Card request. The key used to encrypt the card number on the cardholder\u2019s device or browser is valid for 15 minutes and must be used to verify the signature in the response message. CyberSource recommends creating a new key for each order. Generating a key is an authenticated request initiated from your servers, prior to requesting to tokenize the card data from your customer\u2019s device or browser.", - "operationId": "generatePublicKey", - "x-devcenter-metaData": { - "categoryTag": "Flex_Microform", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-flex/SAFlexibleToken.html" - }, - "x-queryParameterDefaults": { - "format": "JWT" - }, - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "query", - "name": "format", - "type": "string", - "required": true, - "default": "JWT", - "description": "Indicator to enable the receipt of the Keys response in Flex 11+ format (JWT) or legacy (parameter not required)" - }, - { - "in": "body", - "name": "generatePublicKeyRequest", - "required": true, - "schema": { - "type": "object", - "required": [ - "encryptionType" - ], - "properties": { - "encryptionType": { - "type": "string", - "description": "How the card number should be encrypted in the subsequent Tokenize Card request. Possible values are RsaOaep256 or None (if using this value the card number must be in plain text when included in the Tokenize Card request). The Tokenize Card request uses a secure connection (TLS 1.2+) regardless of what encryption type is specified." - }, - "targetOrigin": { - "type": "string", - "description": "The merchant origin (e.g. https://example.com) used to integrate with Flex API. Required to comply with CORS and CSP standards." - } - } - } - } - ], - "x-example": { - "example0": { - "summary": "Generate Key", - "value": { - "encryptionType": "RsaOaep", - "targetOrigin": "https://www.test.com" - } - } - }, - "responses": { - "200": { - "description": "Retrieved key.", - "schema": { - "title": "flexV1KeysPost200Response", - "properties": { - "keyId": { - "type": "string", - "description": "Unique identifier for the generated token. Used in the subsequent Tokenize Card request from your customer\u2019s device or browser." - }, - "der": { - "type": "object", - "description": "The public key in DER format. Used to validate the response from the Tokenize Card request. Additionally this format is useful for client side encryption in Android and iOS implementations.", - "properties": { - "format": { - "type": "string", - "description": "Specifies the format of the public key; currently X.509." - }, - "algorithm": { - "type": "string", - "description": "Algorithm used to encrypt the public key." - }, - "publicKey": { - "type": "string", - "description": "Base64 encoded public key value." - } - } - }, - "jwk": { - "type": "object", - "description": "The public key in JSON Web Key (JWK) format. This format is useful for client side encryption in JavaScript based implementations.", - "properties": { - "kty": { - "type": "string", - "description": "Algorithm used to encrypt the public key." - }, - "use": { - "type": "string", - "description": "Defines whether to use the key for encryption (enc) or verifying a signature (sig). Always returned as enc." - }, - "kid": { - "type": "string", - "description": "The key ID in JWK format." - }, - "n": { - "type": "string", - "description": "JWK RSA Modulus" - }, - "e": { - "type": "string", - "description": "JWK RSA Exponent" - } - } - } - } - } - }, - "default": { - "description": "Error retrieving key.", - "schema": { - "type": "object", - "properties": { - "responseStatus": { - "properties": { - "status": { - "type": "number", - "description": "HTTP Status code." - }, - "reason": { - "type": "string", - "description": "Error Reason Code." - }, - "message": { - "type": "string", - "description": "Error Message." - }, - "correlationId": { - "type": "string", - "description": "API correlation ID." - }, - "details": { - "type": "array", - "items": { - "properties": { - "location": { - "type": "string", - "description": "Field name referred to for validation issues." - }, - "message": { - "type": "string", - "description": "Description or code of any error response." - } - } - } - } - } - }, - "_links": { - "type": "object", - "properties": { - "next": { - "type": "array", - "items": { - "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { - "type": "string", - "description": "HTTP method of the linked resource." - } - } - } - }, - "documentation": { - "type": "array", - "items": { - "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { - "type": "string", - "description": "HTTP method of the linked resource." - } - } - } - }, - "self": { - "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { - "type": "string", - "description": "HTTP method of the linked resource." - } - } - } - } - } - } - } - } - }, - "x-samplePayload": { - "encryptionType": "RsaOaep256" - }, - "x-sampleResponse": { - "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", - "der": { - "format": "X.509", - "algorithm": "RSA", - "publicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgC1G6rVue4w/jjJrKPZusGN9G+Y7mWuLJ0O2/GHd94LvR51+ok7ahuQUVMZLdigixnspaGo/WVLvTTZ5J28Cc1uSx0o/BsxpNaAQD8/aBZL3nnAiBLACxI1JHAVo7SXbJQmz+mqVFYTppg9QmpB2ATTmXjUOQy+Fqkw3EByfCANHhHSNs4+HASovsfcRMUmmvDfTd5qBb23KzDJeDVqTYWa3XjUorlZOCJuLyPgeDEK8oOC9C4W9dn32z8FJ4E6Dz28M/2O3g8FLQD2F+NezkQJsl8MEYo4rl1nr7/oIkMsYLCCoG8jwmryErb7km9JWWgqZ80trkjijFqDAbHfUEwIDAQAB" - }, - "jwk": { - "kty": "RSA", - "use": "enc", - "kid": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", - "n": "fC1G6rVue4w_jjJrKPZusGN9G-Y7mWuLJ0O2_GHd94LvR51-ok7ahuQUVMZLdigixnspaGo_WVLvTTZ5J28Cc1uSx0o_BsxpNaAQD8_aBZL3nnAiBLACxI1JHAVo7SXAJQmz-mqVFYTppg9QmpB2ATTmXjUOQy-Fqkw3EByfCANHhHSNs4-HASovsfcRMUmmvDfTd5qBb23KzDJeDVqTYWa3XjUorlZOCJuLyPgeDEK8oOC9C4W9dn32z8FJ4E6Dz28M_2O3g8FLQD2F-NezkQJsl8MEYo4rl1nr7_oIkMsYLCCoG8jwmryErb7km9JWWgqZ80trkjijFqDAbHfUEw", - "e": "AQAB" - } - } - } - }, - "/flex/v1/tokens": { - "x-name": "Tokenize Card", - "x-description": "Returns a token representing the supplied card details. The token replaces card data and can be used as the Subscription ID in the CyberSource Simple Order API or SCMP API. This is an unauthenticated call that you should initiate from your customer\u2019s device or browser.", - "post": { - "tags": [ - "tokenization" - ], - "summary": "Tokenize Card", - "description": "Returns a token representing the supplied card details. The token replaces card data and can be used as the Subscription ID in the CyberSource Simple Order API or SCMP API. This is an unauthenticated call that you should initiate from your customer\u2019s device or browser.", - "operationId": "tokenize", - "x-devcenter-metaData": { - "categoryTag": "Flex", - "noAuth": true, - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-flex/SAFlexibleToken.html" - }, - "produces": [ - "application/json" - ], - "parameters": [ - { - "in": "body", - "name": "tokenizeRequest", - "required": true, - "schema": { - "type": "object", - "required": [ - "keyId" - ], - "properties": { - "keyId": { - "type": "string", - "description": "Unique identifier for the generated token. This is obtained from the Generate Key request. See the [Java Script and Java examples](http://apps.cybersource.com/library/documentation/dev_guides/Secure_Acceptance_Flex/Key/html) on how to import the key and encrypt using the imported key." - }, - "cardInfo": { - "type": "object", - "required": [ - "cardNumber", - "cardType" - ], - "properties": { - "cardNumber": { - "type": "string", - "description": "Encrypted or plain text card number. If the encryption type of \u201cNone\u201d was used in the Generate Key request, this value can be set to the plaintext card number/Personal Account Number (PAN). If the encryption type of RsaOaep256 was used in the Generate Key request, this value needs to be the RSA OAEP 256 encrypted card number. The card number should be encrypted on the cardholders\u2019 device. The [WebCrypto API] (https://github.com/CyberSource/cybersource-flex-samples/blob/master/java/spring-boot/src/main/resources/public/flex.js) can be used with the JWK obtained in the Generate Key request." - }, - "cardExpirationMonth": { - "type": "string", - "description": "Two digit expiration month" - }, - "cardExpirationYear": { - "type": "string", - "description": "Four digit expiration year" - }, - "cardType": { - "type": "string", - "description": "Card Type. This field is required. Refer to the CyberSource Credit Card Services documentation for supported card types." - } - } - } - } - } - } - ], - "x-example": { - "example0": { - "summary": "Flex Tokenize Card", - "sample-name": "Tokenize Card", - "value": { - "keyId": "08z9hCmn4pRpdNhPJBEYR3Mc2DGLWq5j", - "cardInfo": { - "cardNumber": "4111111111111111", - "cardExpirationMonth": "12", - "cardExpirationYear": "2031", - "cardType": "001" - } - }, - "depends": { - "example": { - "path": "/flex/v1/keys", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "keyId", - "destinationField": "keyId", - "fieldTypeInDestination": "body" - } - ] - } - } - }, - "responses": { - "200": { - "description": "Created payment token.", - "schema": { - "title": "flexV1TokensPost200Response", - "properties": { - "keyId": { - "type": "string", - "description": "The Key ID." - }, - "token": { - "type": "string", - "description": "The generated token. The token replaces card data and is used as the Subscription ID in the CyberSource Simple Order API or SCMP API." - }, - "maskedPan": { - "type": "string", - "description": "The masked card number displaying the first 6 digits and the last 4 digits." - }, - "cardType": { - "type": "string", - "description": "The card type." - }, - "timestamp": { - "type": "integer", - "format": "int64", - "description": "The UTC date and time in milliseconds at which the signature was generated." - }, - "signedFields": { - "type": "string", - "description": "Indicates which fields from the response make up the data that is used when verifying the response signature. See the [sample code] (https://github.com/CyberSource/cybersource-flex-samples/blob/master/java/spring-boot/src/main/java/com/cybersource/flex/application/CheckoutController.java) on how to verify the signature." - }, - "signature": { - "type": "string", - "description": "Flex-generated digital signature. To ensure the values have not been tampered with while passing through the client, verify this server-side using the public key generated from the /keys resource." - }, - "discoverableServices": { - "type": "object", - "additionalProperties": { - "type": "object" - } - } - } - } - }, - "default": { - "description": "Error creating token.", - "schema": { - "type": "object", - "properties": { - "responseStatus": { - "properties": { - "status": { - "type": "number", - "description": "HTTP Status code." - }, - "reason": { - "type": "string", - "description": "Error Reason Code." - }, - "message": { - "type": "string", - "description": "Error Message." - }, - "correlationId": { - "type": "string", - "description": "API correlation ID." - }, - "details": { - "type": "array", - "items": { - "properties": { - "location": { - "type": "string", - "description": "Field name referred to for validation issues." - }, - "message": { - "type": "string", - "description": "Description or code of any error response." - } - } - } - } - } - }, - "_links": { - "type": "object", - "properties": { - "next": { - "type": "array", - "items": { - "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { - "type": "string", - "description": "HTTP method of the linked resource." - } - } - } - }, - "documentation": { - "type": "array", - "items": { - "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { - "type": "string", - "description": "HTTP method of the linked resource." - } - } - } - }, - "self": { - "properties": { - "href": { - "type": "string", - "description": "URI of the linked resource." - }, - "title": { - "type": "string", - "description": "Label of the linked resource." - }, - "method": { - "type": "string", - "description": "HTTP method of the linked resource." - } - } - } - } - } - } - } - } - }, - "x-samplePayload": { - "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", - "cardDetails": { - "cardNumber": "ejbhIpMEgYnIODcB4//rrVxMHrqHcnLD6pDRF36jlEk72bETAfiOoxmpI9pGiidqMmkgAnvJfVgR3CLAV5EdG4Mu5IWK26QRnVtwvsVEUtpah7IylbxV9MLvXh2FjIJskKCWNLidb1G4PN5963hnV3IoZd2pF99JwV9lPhOHT5ymlNeg7sTzQQDN1I0/yJApds+t79hl9QVp4PusUDfSsPQTtR2frzlH4V3W+XjHDhmy5oNhiUaVxv27cyG1SWeCKkVC9tc8zLy4pvlgoplrLV8JRaS9hfWalJjv2xtk3DXmNT2urtFv2evcI3LM/S29KlJjPXZcBp0IYyB/taunCA==", - "cardType": "001" - } - }, - "x-sampleResponse": { - "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", - "token": "0100153497304242", - "maskedPan": "424242XXXXXX4242", - "cardType": "001", - "timestamp": 1472733222651, - "signedFields": "token,cardType,maskedPan,timestamp", - "signature": "TcM7METFOIidwbxWG2Xhawx/5gZ7hZB0Lyrhg3NRJ+Pma+Nq7BugvsqLCE2R24+h13xnM6vpJXR2cqfQPkxhb6joJT8jcciEf+lj6h/KjvXuR4pJ4fMll4WS1Z4+574ps0ysV/5zs7kT2IAZj7i+szlYwFJxGhOGC0218x1N0NxELTDyU/HI6n+Aa+mYBqkMXth42t+GNQ7goVXkJWRgQSjp2v0WTh2d2plDnxEWPURZXz7GLdQXRIYUWWx/L5JSf88F1zgjYDpBitNSYBMMILKfDd3KEg+6nIruCln5kDMbTRD8LwPpGYC9tyM9+UM8MBINPHhaqdFp2wHF7dccKA==", - "discoverableServices": {} - } - } - }, - "/risk/v1/decisions": { - "post": { - "summary": "Create Decision Manager", - "description": "Decision Manager can help you automate and streamline your fraud operations. Decision Manager will return a decision based on the request values.", - "operationId": "createBundledDecisionManagerCase", - "tags": [ - "Decision Manager" - ], - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "x-devcenter-metaData": { - "categoryTag": "Risk_Management", - "disableDefaultMerchantCreds": "true", - "disabledReason": "DM API response is a mock response, Please integrate with DM API to test the real-time response from the server." - }, - "parameters": [ - { - "name": "createBundledDecisionManagerCaseRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "required": [ - "orderInformation" - ], - "properties": { - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "processorInformation": { - "type": "object", - "description": "Contains information related to the payment processor.", - "properties": { - "avs": { - "type": "object", - "description": "Address Verification Service", - "properties": { - "code": { - "type": "string", - "maxLength": 3, - "description": "Value returned for address verification from the Payments Authorization response." - } - } - }, - "cardVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 1, - "description": "CVN result code.\n\nFor details, see the `auth_cv_result` reply field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - } - } - }, - "processingInformation": { - "type": "object", - "description": "Decides whether to call Payer Authentication along with DM or not", - "properties": { - "actionList": { - "type": "array", - "description": "Use CONSUMER_AUTHENTICATION to use Payer Authentication along with Decision Manager. For any other value, only Decision Manager will run.\n", - "items": { - "type": "string" - } - } - } - }, - "paymentInformation": { - "type": "object", - "description": "Contains the payment data for this transaction.", - "properties": { - "card": { - "type": "object", - "description": "Use this for a non-tokenized payment card.", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "bin": { - "type": "string", - "maxLength": 6, - "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "description": "Use this object to submit a payment network token instead of card-based values.", - "properties": { - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 1, - "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" - }, - "number": { - "type": "string", - "maxLength": 17, - "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" - }, - "encoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "checkNumber": { - "type": "string", - "maxLength": 8, - "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" - }, - "checkImageReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Image reference number associated with the check. You cannot include any special characters.\n" - } - } - }, - "routingNumber": { - "type": "string", - "maxLength": 9, - "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "iban": { - "type": "string", - "maxLength": 50, - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "swiftCode": { - "type": "string", - "description": "Bank\u2019s SWIFT code. You can use this field only when scoring a direct debit transaction.\nRequired only for crossborder transactions.\n\nFor all possible values, see the `bank_swiftcode` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "method": { - "type": "string", - "maxLength": 10, - "description": "Method of payment used for the order. This field can contain one of the following values:\n - `consumer` (default): Customer credit card\n - `corporate`: Corporate credit card\n - `debit`: Debit card, such as a Maestro (UK Domestic) card\n - `cod`: Collect on delivery\n - `check`: Electronic check\n - `p2p`: Person-to-person payment\n - `private1`: Private label credit card\n - `other`: Other payment method\n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains detailed order-level information.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains `currency` and `totalAmount` for this order.", - "required": [ - "currency" - ], - "properties": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "totalAmount": { - "type": "string", - "maxLength": 19, - "description": "Grand total for the order. 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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" - } - } - }, - "preOrder": { - "type": "string", - "description": "Indicates whether cardholder is placing an order with a future availability or release date.\nThis field can contain one of these values:\n- MERCHANDISE_AVAILABLE: Merchandise available\n- FUTURE_AVAILABILITY: Future availability\n" - }, - "preOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD\n" - }, - "reordered": { - "type": "boolean", - "description": "Indicates whether the cardholder is reordering previously purchased merchandise.\nThis field can contain one of these values:\n- false: First time ordered\n- true: Reordered\n" - }, - "shippingDetails": { - "type": "object", - "description": "Contains shipping information not related to address.", - "properties": { - "giftWrap": { - "type": "boolean", - "description": "Boolean that indicates whether the customer requested gift wrapping for this\npurchase. This field can contain one of the following\nvalues:\n- true: The customer requested gift wrapping.\n- false: The customer did not request gift wrapping.\n" - }, - "shippingMethod": { - "type": "string", - "maxLength": 10, - "description": "Shipping method for the product. Possible values:\n\n - `lowcost`: Lowest-cost service\n - `sameday`: Courier or same-day service\n - `oneday`: Next-day or overnight service\n - `twoday`: Two-day service\n - `threeday`: Three-day service\n - `pickup`: Store pick-up\n - `other`: Other shipping method\n - `none`: No shipping method because product is a service or subscription\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "destinationTypes": { - "type": "string", - "maxLength": 25, - "description": "Shipping destination of item. Example: Commercial, Residential, Store\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "destinationCode": { - "type": "integer", - "maxLength": 2, - "description": "Indicates destination chosen for the transaction. Possible values:\n- 01- Ship to cardholder billing address\n- 02- Ship to another verified address on file with merchant\n- 03- Ship to address that is different than billing address\n- 04- Ship to store (store address should be populated on request)\n- 05- Digital goods\n- 06- Travel and event tickets, not shipped\n- 07- Other\n" - }, - "method": { - "type": "string", - "maxLength": 10, - "description": "Shipping method for the product. Possible values:\n- lowcost: Lowest-cost service\n- sameday: Courier or same-day service\n- oneday: Next-day or overnight service\n- twoday: Two-day service\n- threeday: Three-day service\n- pickup: Store pick-up\n- other: Other shipping method\n- none: No shipping method because product is a service or subscription\nRequired for American Express SafeKey (U.S.).\n" - } - } - }, - "returnsAccepted": { - "type": "boolean", - "description": "Boolean that indicates whether returns are accepted for this order.\nThis field can contain one of the following values:\n- true: Returns are accepted for this order.\n- false: Returns are not accepted for this order.\n" - }, - "lineItems": { - "type": "array", - "description": "This array contains detailed information about individual products in the order.", - "items": { - "type": "object", - "properties": { - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "giftCardCurrency": { - "type": "integer", - "maxLength": 3, - "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "productSKU": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productRisk": { - "type": "string", - "maxLength": 6, - "description": "Indicates the level of risk for the product. This field can contain one of the following values:\n- `low`: The product is associated with few chargebacks.\n- `normal`: The product is associated with a normal number of chargebacks.\n- `high`: The product is associated with many chargebacks.\n" - }, - "productDescription": { - "type": "string", - "description": "Brief description of item." - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "gift": { - "type": "boolean", - "description": "This field is only used in DM service.\n\nDetermines whether to assign risk to the order if the billing and shipping addresses specify different cities,\nstates, or countries. This field can contain one of the following values:\n- true: Orders are assigned only slight additional risk if billing and shipping addresses are different.\n- false: Orders are assigned higher additional risk if billing and shipping addresses are different.\n" - }, - "distributorProductSku": { - "type": "string", - "maxLength": 15, - "description": "Product\u2019s identifier code. This field is inserted into the outgoing message without being parsed or formatted.\nThis field is included as Distributor product SKU (Offer) in the list of API fields with which you can create\ncustom rules.\n" - }, - "passenger": { - "type": "object", - "description": "Contains travel-related passenger details used by DM service only.", - "properties": { - "type": { - "type": "string", - "maxLength": 32, - "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" - }, - "status": { - "type": "string", - "maxLength": 32, - "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" - }, - "phone": { - "type": "string", - "maxLength": 15, - "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's first name." - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's last name." - }, - "id": { - "type": "string", - "maxLength": 40, - "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." - }, - "nationality": { - "type": "string", - "maxLength": 2, - "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." - } - } - }, - "shippingDestinationTypes": { - "type": "string", - "maxLength": 50, - "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - } - } - }, - "totalOffersCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of articles/items in the order as a numeric decimal count.\nPossible values: 00 - 99\n" - } - } - }, - "buyerInformation": { - "type": "object", - "description": "Contains information about the buyer.", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "username": { - "type": "string", - "maxLength": 255, - "description": "Specifies the customer account user name." - }, - "hashedPassword": { - "type": "string", - "maxLength": 100, - "description": "The merchant's password that CyberSource hashes and stores as a hashed password.\n\nFor details about this field, see the `customer_password` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "dateOfBirth": { - "type": "string", - "maxLength": 8, - "description": "Recipient\u2019s date of birth. **Format**: `YYYYMMDD`.\n\nThis field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters\nbut otherwise does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" - }, - "issuedBy": { - "type": "string", - "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "verificationResults": { - "type": "string", - "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" - } - } - } - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "cookiesAccepted": { - "type": "string", - "description": "Whether the customer\u2019s browser accepts cookies. This field can contain one of the following values:\n- `yes`: The customer\u2019s browser accepts cookies.\n- `no`: The customer\u2019s browser does not accept cookies.\n" - }, - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "fingerprintSessionId": { - "type": "string", - "description": "Field that contains the session ID that you send to Decision Manager to obtain the device fingerprint\ninformation. The string can contain uppercase and lowercase letters, digits, hyphen (-), and\nunderscore (_). However, do not use the same uppercase and lowercase letters to indicate\ndifferent session IDs.\n\nThe session ID must be unique for each merchant ID. You can use any string that you are already\ngenerating, such as an order number or web session ID.\n\nThe session ID must be unique for each page load, regardless of an individual\u2019s web session ID.\nIf a user navigates to a profiled page and is assigned a web session, navigates away from the\nprofiled page, then navigates back to the profiled page, the generated session ID should be different\nand unique. You may use a web session ID, but it is preferable to use an application GUID (Globally\nUnique Identifier). This measure ensures that a unique ID is generated every time the page is\nloaded, even if it is the same user reloading the page.\n" - }, - "httpBrowserEmail": { - "type": "string", - "description": "Email address set in the customer\u2019s browser, which may differ from customer email.\n" - }, - "userAgent": { - "type": "string", - "maxLength": 40, - "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" - }, - "rawData": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "description": "Field that contains the device fingerprint data from the specified provider. The value should be Base64 encoded.\n" - }, - "provider": { - "type": "string", - "maxLength": 32, - "description": "Possible values:\n- cardinal\n- inauth\n- threatmetrix\n" - } - } - } - }, - "httpAcceptBrowserValue": { - "type": "string", - "maxLength": 255, - "description": "Value of the Accept header sent by the customer\u2019s web browser.\n**Note** If the customer\u2019s browser provides a value, you must include it in your request.\n" - }, - "httpAcceptContent": { - "type": "string", - "maxLength": 256, - "description": "The exact content of the HTTP accept header.\n" - }, - "httpBrowserLanguage": { - "type": "string", - "maxLength": 8, - "description": "Value represents the browser language as defined in IETF BCP47.\nExample:en-US, refer https://en.wikipedia.org/wiki/IETF_language_tag for more details.\n" - }, - "httpBrowserJavaEnabled": { - "type": "boolean", - "description": "A Boolean value that represents the ability of the cardholder browser to execute Java.\nValue is returned from the navigator.javaEnabled property. Possible Values:True/False\n" - }, - "httpBrowserJavaScriptEnabled": { - "type": "boolean", - "description": "A Boolean value that represents the ability of the cardholder browser to execute JavaScript. Possible Values:True/False.\n**Note**: Merchants should be able to know the values from fingerprint details of cardholder's browser.\n" - }, - "httpBrowserColorDepth": { - "type": "string", - "maxLength": 2, - "description": "Value represents the bit depth of the color palette for displaying images, in bits per pixel.\nExample : 24, refer https://en.wikipedia.org/wiki/Color_depth for more details\n" - }, - "httpBrowserScreenHeight": { - "type": "string", - "maxLength": 6, - "description": "Total height of the Cardholder's scree in pixels, example: 864.\n" - }, - "httpBrowserScreenWidth": { - "type": "string", - "maxLength": 6, - "description": "Total width of the cardholder's screen in pixels. Example: 1536.\n" - }, - "httpBrowserTimeDifference": { - "type": "string", - "maxLength": 5, - "description": "Time difference between UTC time and the cardholder browser local time, in minutes, Example:300\n" - }, - "userAgentBrowserValue": { - "type": "string", - "maxLength": 255, - "description": "Value of the User-Agent header sent by the customer\u2019s web browser.\nNote If the customer\u2019s browser provides a value, you must include it in your request.\n" - } - } - }, - "riskInformation": { - "type": "object", - "properties": { - "profile": { - "type": "object", - "description": "Identifies a risk profile.", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" - } - } - }, - "eventType": { - "type": "string", - "maxLength": 255, - "description": "Specifies one of the following types of events:\n- login\n- account_creation\n- account_update\nFor regular payment transactions, do not send this field.\n" - }, - "buyerHistory": { - "type": "object", - "properties": { - "customerAccount": { - "type": "object", - "properties": { - "lastChangeDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder\u2019s account was last changed.\nThis includes changes to the billing or shipping address, new payment accounts or new users added.\nRecommended for Discover ProtectBuy.\n" - }, - "creationHistory": { - "type": "string", - "description": "The values from the enum can be:\n- GUEST\n- NEW_ACCOUNT\n- EXISTING_ACCOUNT\n" - }, - "modificationHistory": { - "type": "string", - "description": "This field is applicable only in case of EXISTING_ACCOUNT in creationHistory. Possible values:\n- ACCOUNT_UPDATED_NOW\n- ACCOUNT_UPDATED_PAST\n" - }, - "passwordHistory": { - "type": "string", - "description": "This only applies for EXISTING_ACCOUNT in creationHistory.\nThe values from the enum can be:\n- PASSWORD_CHANGED_NOW\n- PASSWORD_CHANGED_PAST\n- PASSWORD_NEVER_CHANGED\n" - }, - "createDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder opened the account.\nRecommended for Discover ProtectBuy.\nThis only applies for EXISTING_ACCOUNT in creationHistory.\n" - }, - "passwordChangeDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder last changed or reset password on account.\nRecommended for Discover ProtectBuy.\nThis only applies for PASSWORD_CHANGED_PAST in passwordHistory.\n" - } - } - }, - "accountHistory": { - "type": "object", - "properties": { - "firstUseOfShippingAddress": { - "type": "boolean", - "description": "Applicable when this is not a guest account.\n" - }, - "shippingAddressUsageDate": { - "type": "string", - "maxLength": 10, - "description": "Date when the shipping address for this transaction was first used.\nRecommended for Discover ProtectBuy.\nIf `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.\n" - } - } - }, - "accountPurchases": { - "type": "integer", - "maxLength": 4, - "description": "Number of purchases with this cardholder account during the previous six months.\nRecommended for Discover ProtectBuy.\n" - }, - "addCardAttempts": { - "type": "integer", - "maxLength": 3, - "description": "Number of add card attempts in the last 24 hours.\nRecommended for Discover ProtectBuy.\n" - }, - "priorSuspiciousActivity": { - "type": "boolean", - "description": "Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.\nRecommended for Discover ProtectBuy.\n" - }, - "paymentAccountHistory": { - "type": "string", - "description": "This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are:\n- PAYMENT_ACCOUNT_EXISTS\n- PAYMENT_ACCOUNT_ADDED_NOW\n" - }, - "paymentAccountDate": { - "type": "integer", - "maxLength": 8, - "description": "Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory\n" - }, - "transactionCountDay": { - "type": "integer", - "maxLength": 3, - "description": "Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours.\nRecommended for Discover ProtectBuy.\n" - }, - "transactionCountYear": { - "type": "integer", - "maxLength": 3, - "description": "Number of transaction (successful or abandoned) for this cardholder account within the last year.\nRecommended for Discover ProtectBuy.\n" - } - } - }, - "auxiliaryData": { - "type": "array", - "items": { - "type": "object", - "description": "Contains auxiliary key-value pairs.", - "properties": { - "key": { - "type": "string", - "maxLength": 255, - "description": "Fields that you can use to send additional data to Risk services.\n**Warning** Auxiliary fields are not intended to and MUST NOT\nbe used to capture personally identifying information.\nAccordingly, merchants are prohibited from capturing,\nobtaining, and/or transmitting any personally identifying\ninformation in or via the auxiliary data fields. Personally\nidentifying information includes, but is not limited to,\naddress, credit card number, social security number,\ndriver's license number, state-issued identification\nnumber, passport number, and card verification numbers\n(CVV, CVC2, CVV2, CID, CVN). In the event CyberSource\ndiscovers that a merchant is capturing and/or transmitting\npersonally identifying information via the auxiliary data\nfields, whether or not intentionally, CyberSource WILL\nimmediately suspend the merchant's account, which will\nresult in a rejection of any and all transaction requests\nsubmitted by the merchant after the point of suspension.\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "String value for the key" - } - } - } - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "actualFinalDestination": { - "type": "string", - "maxLength": 3, - "description": "IATA Code for the actual final destination that the customer intends to travel to.\nIt should be a destination on the completeRoute.\n" - }, - "completeRoute": { - "type": "string", - "maxLength": 255, - "description": "Concatenation of individual travel legs in the format ORIG1-DEST1[:ORIG2-DEST2...:ORIGn-DESTn], for\nexample, SFO-JFK:JFK-LHR:LHR-CDG. For airport codes, see the IATA Airline and Airport Code Search.\nNote In your request, send either the complete route or the individual legs (_leg#_orig and _leg#_dest). If you\nsend all the fields, the value of _complete_route takes precedence over that of the _leg# fields.\n" - }, - "departureTime": { - "type": "string", - "maxLength": 25, - "description": "Departure date and time of the first leg of the trip. Use one of the following formats:\n - yyyy-MM-dd HH:mm z\n - yyyy-MM-dd hh:mm a z\n - yyyy-MM-dd hh:mma z\n HH = hour in 24-hour format\n hh = hour in 12-hour format\n a = am or pm (case insensitive)\n z = time zone of the departing flight, for example: If the\n airline is based in city A, but the flight departs from city\n B, z is the time zone of city B at the time of departure.\nImportant For travel information, use GMT instead of UTC, or use the local time zone.\nExamples\n2011-03-20 11:30 PM PDT\n2011-03-20 11:30pm GMT\n2011-03-20 11:30pm GMT-05:00\nEastern Standard Time: GMT-05:00 or EST\nNote When specifying an offset from GMT, the format must be exactly as specified in the example. Insert no\nspaces between the time zone and the offset.\n" - }, - "journeyType": { - "type": "string", - "maxLength": 32, - "description": "Type of travel, for example one way or round trip." - }, - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "origination": { - "type": "string", - "maxLength": 3, - "description": "Use to specify the airport code for the origin of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco.\nDo not use the colon (:) or the dash (-). For airport codes, see the IATA Airline and Airport Code Search.\nThe leg number can be a positive integer from 0 to N.\nFor example:\n`travelInformation.legs.0.origination=SFO`\n`travelInformation.legs.1.origination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_orig` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "destination": { - "type": "string", - "maxLength": 3, - "description": "Use to specify the airport code for the destination of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco. Do not use the\ncolon (:) or the dash (-). For airport codes, see [IATA Airline and Airport Code Search](https://www.iata.org/publications/Pages/code-search.aspx). The leg number can be a\npositive integer from 0 to N.\nFor example:\n\n`travelInformation.legs.0.destination=SFO`\n`travelInformation.legs.1.destination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_dest` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "carrierCode": { - "type": "string", - "maxLength": 2, - "description": "International Air Transport Association (IATA) code for the carrier for this leg of the trip.\nRequired for each leg.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - }, - "departureDate": { - "type": "string", - "description": "Departure date for the first leg of the trip. Format: YYYYMMDD.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - } - } - } - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nIf you do not include this field in your request, CyberSource uses a default value of 1.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - }, - "passengers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - } - } - } - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "items": { - "type": "object", - "description": "Contains merchant-defined key-value pairs.", - "properties": { - "key": { - "type": "string", - "maxLength": 255, - "description": "Fields that you can use to store information. The value\nappears in the Case Management Details window in the\nBusiness Center. The first four fields are the same fields\nthat are used by the Secure Data services. See request\ncode examples.\n**Warning** Merchant-defined data fields are not intended\nto and must not be used to capture personally identifying\ninformation. Accordingly, merchants are prohibited from\ncapturing, obtaining, and/or transmitting any personally\nidentifying information in or via the merchant-defined data\nfields. Personally identifying information includes, but is\nnot limited to, address, credit card number, social security\nnumber, driver's license number, state-issued\nidentification number, passport number, and card\nverification numbers (CVV, CVC2, CVV2, CID, CVN). In\nthe event CyberSource discovers that a merchant is\ncapturing and/or transmitting personally identifying\ninformation via the merchant-defined data fields, whether\nor not intentionally, CyberSource will immediately\nsuspend the merchant's account, which will result in a\nrejection of any and all transaction requests submitted by\nthe merchant after the point of suspension.\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "String value for the key" - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - } - } - }, - "merchantName": { - "type": "string", - "maxLength": 25, - "description": "Your company\u2019s name as you want it to appear to the customer in the issuing bank\u2019s authentication form.\nThis value overrides the value specified by your merchant bank.\n" - } - } - }, - "acquirerInformation": { - "type": "object", - "properties": { - "acquirerBin": { - "type": "string", - "maxLength": 11, - "description": "Acquirer bank ID number that corresponds to a certificate that Cybersource already has.This ID has this format. 4XXXXX for Visa and 5XXXXX for Mastercard.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Issuers need to be aware of the Acquirer's Country Code when the Acquirer country differs from the Merchant country and the Acquirer is in the EEA (European Economic Area).\n" - }, - "password": { - "type": "string", - "maxLength": 8, - "description": "Registered password for the Visa directory server.\n" - }, - "merchantId": { - "type": "string", - "maxLength": 15, - "description": "Username for the visa directory server that is created when your acquirer sets up your account. This ID might be the same as your merchant ID. the username can be 15 or 23 characters.\n" - } - } - }, - "recurringPaymentInformation": { - "type": "object", - "description": "This object contains recurring payment information.", - "properties": { - "endDate": { - "type": "string", - "maxLength": 10, - "description": "The date after which no further recurring authorizations should be performed. Format: `YYYY-MM-DD`\n**Note** This field is required for recurring transactions.\n" - }, - "frequency": { - "type": "integer", - "maxLength": 4, - "description": "Integer value indicating the minimum number of days between recurring authorizations. A frequency\nof monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months.\n\nExample: 6 months = 168\n\nExample values accepted (31 days):\n- 31\n- 031\n- 0031\n\n**Note** This field is required for recurring transactions.\n" - }, - "numberOfPayments": { - "type": "integer", - "maxLength": 3, - "description": "Total number of payments for the duration of the recurring subscription.\n" - }, - "originalPurchaseDate": { - "type": "string", - "maxLength": 17, - "description": "Date of original purchase. Required for recurring transactions.\nFormat: `YYYY-MM-DDTHH:MM:SSZ`\n**Note**: If this field is empty, the current date is used.\n" - }, - "sequenceNumber": { - "type": "integer", - "maxLength": 3, - "description": "This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC. \nThis field records recurring sequence, e.g. 1st for initial, 2 for subsequent, 3 etc\n" - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "strongAuthentication": { - "type": "object", - "properties": { - "authenticationIndicator": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of Authentication request\n\n01 - Payment transaction\n\n02 - Recurring transaction\n\n03 - Installment transaction\n\n04 - Add card\n\n05 - Maintain card\n\n06 - Cardholder verification as part of EMV token ID and V\n" - } - } - }, - "authenticationType": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" - }, - "acsWindowSize": { - "type": "string", - "maxLength": 2, - "description": "An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.\n\n01 - 250x400\n\n02 - 390x400\n\n03 - 500x600\n\n04 - 600x400\n\n05 - Full page\n" - }, - "alternateAuthenticationData": { - "type": "string", - "maxLength": 2048, - "description": "Data that documents and supports a specific authentication process.\n" - }, - "alternateAuthenticationDate": { - "type": "string", - "maxLength": 14, - "description": "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM\n" - }, - "alternateAuthenticationMethod": { - "type": "string", - "description": "Mechanism used by the cardholder to authenticate to the 3D Secure requestor.\nPossible values:\n- `01`: No authentication occurred\n- `02`: Login using merchant system credentials\n- `03`: Login using Federated ID\n- `04`: Login using issuer credentials\n- `05`: Login using third-party authenticator\n- `06`: Login using FIDO Authenticator\n" - }, - "authenticationDate": { - "type": "string", - "maxLength": 14, - "description": "The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request\npayload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be\nprovided by merchant in authorization request if calling an external 3DS provider.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\nFormat: YYYYMMDDHHMMSS\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" - }, - "transactionFlowIndicator": { - "type": "integer", - "maxLength": 2, - "description": "This field is only applicable to Rupay and is optional. Merchant will have to pass a valid value from 01 through 07 which indicates the transaction flow. Below are the possible values.\n01:NW \u2013 Transaction performed at domestic merchant.\n02:TW - Transaction performed at domestic merchant along with Token provisioning.\n03:IT \u2013 Transaction performed at International merchant.\n04:AT- Authentication Transaction Only.\n05:AW- Authentication transaction for provisioning.\n06:DI- Domestic InApp Transaction.\n07:II- International InApp transaction.\n" - }, - "challengeCancelCode": { - "type": "string", - "maxLength": 2, - "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" - }, - "challengeCode": { - "type": "string", - "description": "Possible values:\n- `01`: No preference\n- `02`: No challenge request\n- `03`: Challenge requested (3D Secure requestor preference)\n- `04`: Challenge requested (mandate)\n- `05`: No challenge requested (transactional risk analysis is already performed)\n- `06`: No challenge requested (Data share only)\n- `07`: No challenge requested (strong consumer authentication is already performed)\n- `08`: No challenge requested (utilize whitelist exemption if no challenge required)\n- `09`: Challenge requested (whitelist prompt requested if challenge required)\n**Note** This field will default to `01` on merchant configuration and can be overridden by the merchant.\nEMV 3D Secure version 2.1.0 supports values `01-04`. Version 2.2.0 supports values `01-09`.\n\nFor details, see `pa_challenge_code` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html)\n" - }, - "challengeStatus": { - "type": "string", - "maxLength": 2, - "description": "The `consumerAuthenticationInformation.challengeCode` indicates the authentication type/level, or challenge, that was presented to the cardholder\nat checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to\nthe issuer the alternative authentication methods that the consumer used.\n" - }, - "customerCardAlias": { - "type": "string", - "maxLength": 128, - "description": "An alias that uniquely identifies the customer's account and credit card on file.\nNote This field is required if Tokenization is enabled in the merchant profile settings.\n" - }, - "decoupledAuthenticationIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" - }, - "decoupledAuthenticationMaxTime": { - "type": "string", - "maxLength": 5, - "description": "Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes).\nPossible Values: Numeric values between 1 and 10080 accepted.\n" - }, - "defaultCard": { - "type": "boolean", - "description": "Indicates that the card being used is the one designated as the primary payment card for purchase.\nRecommended for Discover ProtectBuy.\n" - }, - "deviceChannel": { - "type": "string", - "maxLength": 10, - "description": "Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.\n" - }, - "installmentTotalCount": { - "type": "integer", - "maxLength": 4, - "description": "An integer value greater than 1 indicating the max number of permitted authorizations for installment payments.\n**Note** This is required if the merchant and cardholder have agreed to installment payments.\n" - }, - "merchantFraudRate": { - "type": "string", - "maxLength": 2, - "description": "Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes).\nPossible Values:\n1 = Represents fraud rate <=1\n\n2 = Represents fraud rate >1 and <=6\n\n3 = Represents fraud rate >6 and <=13\n\n4 = Represents fraud rate >13 and <=25\n\n5 = Represents fraud rate >25\n\nEEA** = European Economic Area\nRTS** = Regulatory Technical Standards\nPSD2** = Payment Services Directive\n" - }, - "marketingOptIn": { - "type": "boolean", - "description": "Indicates whether the customer has opted in for marketing offers.\nRecommended for Discover ProtectBuy.\n" - }, - "marketingSource": { - "type": "string", - "maxLength": 40, - "description": "Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.\n" - }, - "mcc": { - "type": "string", - "maxLength": 4, - "description": "Merchant category code.\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "merchantScore": { - "type": "integer", - "maxLength": 2, - "description": "Risk Score provided by merchants. This is specific for CB transactions.\n" - }, - "messageCategory": { - "type": "string", - "description": "Category of the message for a specific use case. Possible values:\n\n- `01`: PA- payment authentication\n- `02`: NPA- non-payment authentication\n- `03-79`: Reserved for EMVCo future use (values invalid until defined by EMVCo)\n- `80-99`: Reserved for DS use\n" - }, - "npaCode": { - "type": "string", - "maxLength": 2, - "description": "Non-Payer Authentication Indicator.\nPossible values:\n- `01`: Add card\n- `02`: Maintain card information\n- `03`: Cardholder verification for EMV token\n- `04-80` Reserved for EMVCo\n- `80-90` Reserved DS\n" - }, - "overridePaymentMethod": { - "type": "string", - "description": "Specifies the Brazilian payment account type used for the transaction.\nThis field overrides other payment types that might be specified in the request.\nUse one of the following values for this field:\n- `NA`: Not applicable. Do not override other payment types that are specified in the request.\n- `CR`: Credit card.\n- `DB`: Debit card.\n- `VSAVR`: Visa Vale Refeicao\n- `VSAVA`: Visa Vale Alimentacao\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "overrideCountryCode": { - "type": "string", - "maxLength": 2, - "description": "Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)..\n" - }, - "priorAuthenticationData": { - "type": "string", - "maxLength": 2048, - "description": "This field carry data that the ACS can use to verify the authentication process.\n" - }, - "priorAuthenticationMethod": { - "type": "string", - "maxLength": 2, - "description": "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n\n01 - Frictionless authentication occurred by ACS\n\n02 - Cardholder challenge occurred by ACS\n\n03 - AVS verified\n\n04 - Other issuer methods\n\n05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo)\n\n80-99 - Reserved for DS use\n" - }, - "priorAuthenticationReferenceId": { - "type": "string", - "maxLength": 36, - "description": "This data element contains a ACS Transaction ID for a prior authenticated transaction.\nFor example, the first recurring transaction that was authenticated with the cardholder\n" - }, - "priorAuthenticationTime": { - "type": "string", - "maxLength": 12, - "description": "Date and time in UTC of the prior cardholder authentication. Format \u2013 YYYYMMDDHHMM\n" - }, - "productCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the product code, which designates the type of transaction.\nSpecify one of the following values for this field:\n- AIR: Airline purchase\nImportant Required for American Express SafeKey (U.S.).\n- `ACC`: Accommodation Rental\n- `ACF`: Account funding\n- `CHA`: Check acceptance\n- `DIG`: Digital Goods\n- `DSP`: Cash Dispensing\n- `GAS`: Fuel\n- `GEN`: General Retail\n- `LUX`: Luxury Retail\n- `PAL`: Prepaid activation and load\n- `PHY`: Goods or services purchase\n- `QCT`: Quasi-cash transaction\n- `REN`: Car Rental\n- `RES`: Restaurant\n- `SVC`: Services\n- `TBD`: Other\n- `TRA`: Travel\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "returnUrl": { - "type": "string", - "maxLength": 2048, - "description": "The URL of the merchant\u2019s return page. CyberSource adds this return URL to the step-up JWT and returns it in the\nresponse of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL.\nOnce the bank session completes, the merchant receives a POST to their URL. This response contains the completed\nbank session\u2019s transactionId. The merchant\u2019s return page should capture the transaction ID and send it in the\nPayer Authentication validation call.\n" - }, - "requestorId": { - "type": "string", - "maxLength": 35, - "description": "Cardinal's directory server assigned 3DS Requestor ID value" - }, - "requestorInitiatedAuthenticationIndicator": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of 3RI request.\n\nPossible Values:\n\n01 - Recurring transaction\n\n02 - Installment transaction\n\n03 - Add card\n\n04 - Maintain card\n\n05 - Account verification\n\n06 - Split/delayed shipment\n\n07 - Top-up\n\n08 - Mail Order\n\n09 - Telephone Order\n\n10 - Whitelist status check\n\n11 - Other payment\n" - }, - "requestorName": { - "type": "string", - "maxLength": 40, - "description": "Cardinal's directory server assigned 3DS Requestor Name value" - }, - "referenceId": { - "type": "string", - "maxLength": 50, - "description": "Reference ID that corresponds to the device fingerprinting data that was collected previously.\nNote Required for Hybrid integration.\n" - }, - "sdkMaxTimeout": { - "type": "string", - "maxLength": 2, - "description": "This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes).\n\nPossible Values:\n\nGreater than or equal to 05 (05 is the minimum timeout to set)\n\nCardinal Default is set to 15\n\nNOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed\n" - }, - "secureCorporatePaymentIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies.\nPossible Values : 0/1\n" - }, - "transactionMode": { - "type": "string", - "description": "Transaction mode identifier. Identifies the channel from which the transaction originates.\nPossible values:\n\n- `M`: MOTO (Mail Order Telephone Order)\n- `R`: Retail\n- `S`: eCommerce\n- `P`: Mobile Device\n- `T`: Tablet\n" - }, - "whiteListStatus": { - "type": "string", - "maxLength": 1, - "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1DecisionsPost201Response", - "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." - } - } - }, - "reversal": { - "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." - } - } - }, - "capture": { - "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." - } - } - }, - "customer": { - "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." - } - } - }, - "paymentInstrument": { - "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." - } - } - }, - "shippingAddress": { - "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." - } - } - }, - "instrumentIdentifier": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "submitTimeLocal": { - "type": "string", - "description": "Time that the transaction was submitted in local time. Generated by Cybersource." - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - `ACCEPTED`\n - `REJECTED`\n - `PENDING_REVIEW`\n - `DECLINED`\n - `PENDING_AUTHENTICATION`\n - `INVALID_REQUEST`\n - `AUTHENTICATION_FAILED`\n - `CHALLENGE`\n" - }, - "riskInformation": { - "type": "object", - "description": "Contains the result of risk assessment.", - "properties": { - "profile": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" - }, - "desinationQueue": { - "type": "string", - "maxLength": 255, - "description": "Name of the queue where orders that are not automatically accepted are sent.\n" - }, - "selectorRule": { - "type": "string", - "maxLength": 255, - "description": "Name of the profile selector rule that chooses the profile to use for the\ntransaction. If no profile selector exists, the value is Default Active Profile.\n" - } - } - }, - "rules": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 255, - "description": "Description of the rule as it appears in the Profile Editor." - }, - "decision": { - "type": "string", - "maxLength": 255, - "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" - } - } - } - }, - "infoCodes": { - "type": "object", - "properties": { - "velocity": { - "type": "array", - "description": "List of information codes triggered by the order. These information codes were generated when you created\nthe order and product velocity rules and are returned so that you can associate them with the rules.\n", - "items": { - "type": "string", - "description": "Indicates excessive volume of transactions." - } - }, - "address": { - "type": "array", - "description": "Indicates a mismatch between the customer\u2019s billing and shipping addresses.\n", - "items": { - "type": "string" - } - }, - "customerList": { - "type": "array", - "description": "Indicates that customer information is associated with transactions that are either on the negative or\nthe positive list.\n", - "items": { - "type": "string" - } - }, - "deviceBehavior": { - "type": "array", - "description": "Indicates the device behavior information code(s) returned from device fingerprinting.\n", - "items": { - "type": "string" - } - }, - "identityChange": { - "type": "array", - "description": "Indicates excessive identity changes. The threshold is variable depending on the identity elements being\ncompared.\n", - "items": { - "type": "string" - } - }, - "internet": { - "type": "array", - "description": "Indicates a problem with the customer\u2019s email address, IP address, or billing address.\n", - "items": { - "type": "string" - } - }, - "phone": { - "type": "array", - "description": "Indicates a problem with the customer\u2019s phone number.\n", - "items": { - "type": "string" - } - }, - "suspicious": { - "type": "array", - "description": "Indicates that the customer provided potentially suspicious information.\n", - "items": { - "type": "string" - } - }, - "globalVelocity": { - "type": "array", - "description": "Indicates that the customer has a high purchase frequency.\n", - "items": { - "type": "string" - } - } - } - }, - "velocity": { - "type": "object", - "properties": { - "morphing": { - "type": "array", - "description": "List of information codes triggered by the order. These information codes were generated when you created the order and product velocity rules and are returned so that you can associate them with the rules.\n\nReturned by scoring service.\n", - "items": { - "type": "object", - "properties": { - "count": { - "type": "integer", - "maxLength": 5, - "description": "Morphing count specified by the number #.\n\n**Note** The count is not returned for the initial transaction.\n" - }, - "fieldName": { - "type": "string", - "maxLength": 255, - "description": "Field name of the morphing element. specified by the setting that you chose in the\nVelocity Editor.\n\nFor all possible values, see the `decisionReply_morphingElement_#_fieldName` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "informationCode": { - "type": "string", - "maxLength": 255, - "description": "Identifier that CyberSource assigned to the velocity rule specified by the number #.\n\nFor all possible values, see the `decision_velocity_morphing_#_info_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > \n" - } - } - } - }, - "address": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255, - "description": "Indicates a mismatch between the customer's billing and shipping addresses.\n\nFor all possible values, see the `score_address_info` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - } - }, - "casePriority": { - "type": "integer", - "maxLength": 1, - "description": "You receive this field only if you subscribe to the Enhanced Case Management service. The priority level ranges from 1 (highest) to 5 (lowest); the default value is 3. If you do not assign a priority to your rules or to your profiles, the default value is given to the order.\n\nFor all possible values, see the `decision_case_priority` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "localTime": { - "type": "string", - "maxLength": 255, - "description": "The customer's local time (`hh:mm:ss`), which is calculated from the transaction request time and the\ncustomer's billing address.\n\nFor details, see the `score_time_local` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/)\n" - }, - "score": { - "type": "object", - "properties": { - "factorCodes": { - "type": "array", - "items": { - "type": "string", - "description": "This field contains information that affected the score of the order.\nThis field will contain one or more codes, separated by carets (^).\n\nFor all possible values, see the `score_factors` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - }, - "modelUsed": { - "type": "string", - "maxLength": 255, - "description": "Name of the score model used for the transaction. If you did not include a custom model in your request,\nthis field contains the name of CyberSource\u2019s default model.\n\nFor all possible values, see the `score_model_used` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "result": { - "type": "string", - "maxLength": 255, - "description": "Total score calculated for this order. The value cannot be negative.\n\nFor all possible values, see the `score_score_result` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "ipAddress": { - "type": "object", - "description": "Contains detailed response information about the customer's IP address.", - "properties": { - "anonymizerStatus": { - "type": "string", - "maxLength": 255, - "description": "Indicates whether the transaction IP address is associated with a known anonymous proxy.\n\nFor all possible values, see the `score_ip_anonymizer_status` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "locality": { - "type": "string", - "maxLength": 255, - "description": "Name of the city decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_city` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "country": { - "type": "string", - "maxLength": 255, - "description": "Name of the country decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 255, - "description": "Name of the state decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_state` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "routingMethod": { - "type": "string", - "maxLength": 255, - "description": "Routing method decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_routing_method` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "carrier": { - "type": "string", - "maxLength": 255, - "description": "Provides the name of the organization that owns the ASN. The carrier is responsible for the traffic carried on the network or set of networks designated as an Autonomous System (AS) and identified by the ASN.\nWhile there are more than 27,000 active ASNs, there are fewer carriers, because a single carrier often manages several ASNs.\n" - }, - "organization": { - "type": "string", - "maxLength": 255, - "description": "The Registering Organization is the entity responsible for the actions and content associated with a given block of IP addresses. This is in contrast to the carrier, which is responsible for the routing of traffic for network blocks. Registering Organizations include many types of entities, including corporate, government, or educational entities, and ISPs managing the allocation and use of network blocks.\n" - } - } - }, - "providers": { - "type": "object", - "properties": { - "providerName": { - "type": "array", - "items": { - "type": "object", - "description": "Name of the 3rd party provider, for example, Emailage.\n\nFor all possible values, see the `decision_provider_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n", - "properties": { - "fieldName": { - "type": "array", - "items": { - "type": "string", - "description": "Field name, for example, email address domain name (domain_name).\n\nFor all possible values, see the `decision_provider_#_field_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - }, - "fieldValue": { - "type": "array", - "items": { - "type": "string", - "description": "Value for the field, for example, yahoo.com." - } - } - } - } - } - } - }, - "travel": { - "type": "object", - "properties": { - "actualFinalDestination": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of actual final destination on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of actual final destination on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of actual final destination on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of actual final destination on the route." - } - } - }, - "firstDeparture": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of first departure on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of first departure on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of first departure on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of first departure on the route." - } - } - }, - "firstDestination": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of first destination on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of first destination on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of first destination on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of first destination on the route." - } - } - }, - "lastDestination": { - "type": "object", - "properties": { - "country": { - "type": "string", - "maxLength": 90, - "description": "Country of last destination on the route." - }, - "locality": { - "type": "string", - "maxLength": 90, - "description": "City of last destination on the route." - }, - "latitude": { - "type": "string", - "maxLength": 10, - "description": "Latitude of last destination on the route." - }, - "longitude": { - "type": "string", - "maxLength": 10, - "description": "Longitude of last destination on the route." - } - } - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "description": "Contains response information about the payment.", - "properties": { - "binCountry": { - "type": "string", - "maxLength": 255, - "description": "Country (two-digit country code) associated with the BIN of the customer\u2019s card used for the payment.\nReturned if the information is available. Use this field for additional information when reviewing orders.\nThis information is also displayed in the details page of the CyberSource Business Center.\n\nFor all possible values, see the `bin_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "accountType": { - "type": "string", - "maxLength": 255, - "description": "Type of payment card account. This field can refer to a credit card, debit card, or prepaid card\naccount type.\n\nFor all possible values, see the `score_card_account_type` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "issuer": { - "type": "string", - "maxLength": 255, - "description": "Name of the bank or entity that issued the card account.\n\nFor all possible values, see the `score_card_issuer` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "scheme": { - "type": "string", - "maxLength": 255, - "description": "Subtype of card account. This field can contain one of the following values:\n- Maestro International\n- Maestro UK Domestic\n- MasterCard Credit\n- MasterCard Debit\n- Visa Credit\n- Visa Debit\n- Visa Electron\n\n**Note** Additional values may be present.\n\nFor all possible values, see the `score_card_scheme` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "bin": { - "type": "string", - "maxLength": 255, - "description": "Credit card BIN (the first six digits of the credit card).Derived either from the `cc_bin` request field\nor from the first six characters of the `customer_cc_num` field.\n\nFor all possible values, see the `score_cc_bin` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "accessToken": { - "type": "string", - "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" - }, - "acsRenderingType": { - "type": "string", - "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" - }, - "acsTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" - }, - "acsUrl": { - "type": "string", - "maxLength": 2048, - "description": "URL for the card-issuing bank\u2019s authentication form that you receive when the card is enrolled.\nThe value can be very large.\n" - }, - "authenticationPath": { - "type": "string", - "description": "Indicates what displays to the customer during the authentication process.\nThis field can contain one of these values:\n- `ADS`: (Card not enrolled) customer prompted to activate the card during the checkout process.\n- `ATTEMPTS`: (Attempts processing) Processing briefly displays before the checkout process is completed.\n- `ENROLLED`: (Card enrolled) the card issuer\u2019s authentication window displays.\n- `UNKNOWN`: Card enrollment status cannot be determined.\n- `NOREDIRECT`: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer.\n\nThe following values can be returned if you are using rules-based payer authentication.\n- `RIBA`: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely\nto be challenged cannot be determined.\n- `RIBA_PASS`: The card-issuing bank supports risk-based authentication and it is likely that the\ncardholder will not be challenged to provide credentials, also known as _silent authentication_.\n\nFor details about possible values, see `pa_enroll_authentication_path` field description and \"Rules-Based Payer Authentication\"\nin [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" - }, - "authorizationPayload": { - "type": "string", - "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" - }, - "authenticationType": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" - }, - "authenticationTransactionContextId": { - "type": "string", - "maxLength": 30, - "description": "Payer authentication transaction identifier passed to link the validation and authorization calls.\n" - }, - "validityPeriod": { - "type": "integer", - "maxLength": 2, - "description": "Describes validity of OTP in minutes for incoming transaction. .\n" - }, - "cardholderMessage": { - "type": "string", - "maxLength": 128, - "description": "Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder.\nFor example, \u201cAdditional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.\u201d.\nThe Issuing Bank can optionally support this value.\n" - }, - "cavv": { - "type": "string", - "maxLength": 255, - "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" - }, - "cavvAlgorithm": { - "type": "string", - "maxLength": 1, - "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" - }, - "challengeCancelCode": { - "type": "string", - "maxLength": 2, - "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" - }, - "challengeRequired": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a challenge is required in order to complete authentication.\n**Note** Regional mandates might determine that a challenge is required.\n\nPossible values:\n- `Y`: Challenge required\n- `N`: Challenge not required\n**Note** Used by the Hybrid integration.\n" - }, - "decoupledAuthenticationIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" - }, - "directoryServerErrorCode": { - "type": "string", - "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" - }, - "directoryServerErrorDescription": { - "type": "string", - "maxLength": 4096, - "description": "Directory server text and additional detail about the error for this transaction.\n" - }, - "ecommerceIndicator": { - "type": "string", - "maxLength": 255, - "description": "Commerce indicator for cards not enrolled. This field contains one of these values:\n- `internet`: Card not enrolled, or card type not supported by payer authentication. No liability shift.\n- `js_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `js_failure`: J/Secure directory service is not available. No liability shift.\n- `spa`: Mastercard card not enrolled in the SecureCode program. No liability shift.\n- `vbv_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `vbv_failure`: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive\nthis result if Visa\u2019s directory service is not available. No liability shift.\n" - }, - "eci": { - "type": "string", - "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" - }, - "eciRaw": { - "type": "string", - "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" - }, - "effectiveAuthenticationType": { - "type": "string", - "maxLength": 2, - "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" - }, - "ivr": { - "type": "object", - "properties": { - "enabledMessage": { - "type": "boolean", - "description": "Flag to indicate if a valid IVR transaction was detected.\n" - }, - "encryptionKey": { - "type": "string", - "maxLength": 16, - "description": "Encryption key to be used in the event the ACS requires encryption of the credential field.\n" - }, - "encryptionMandatory": { - "type": "boolean", - "description": "Flag to indicate if the ACS requires the credential to be encrypted.\n" - }, - "encryptionType": { - "type": "string", - "maxLength": 20, - "description": "An indicator from the ACS to inform the type of encryption that should be used in the event the ACS requires encryption of the credential field.\n" - }, - "label": { - "type": "string", - "maxLength": 20, - "description": "An ACS Provided label that can be presented to the Consumer. Recommended use with an application.\n" - }, - "prompt": { - "type": "string", - "maxLength": 80, - "description": "An ACS provided string that can be presented to the Consumer. Recommended use with an application.\n" - }, - "statusMessage": { - "type": "string", - "maxLength": 80, - "description": "An ACS provided message that can provide additional information or details.\n" - } - } - }, - "networkScore": { - "type": "string", - "maxLength": 2, - "description": "The global score calculated by the CB scoring platform and returned to merchants.\n" - }, - "pareq": { - "type": "string", - "description": "Payer authentication request (PAReq) message that you need to forward to the ACS.\nThe value can be very large. The value is in base64.\n" - }, - "paresStatus": { - "type": "string", - "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" - }, - "proofXml": { - "type": "string", - "description": "Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need\nto show proof of enrollment checking, you may need to parse the string for the information required by the\npayment card company. The value can be very large. For details about possible values, see the `pa_enroll_proofxml` field description in\n[CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n- For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.\n- For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment\nchecking for any payer authentication transaction that you re-present because of a chargeback.\n" - }, - "proxyPan": { - "type": "string", - "description": "Encrypted version of the card number used in the payer authentication request message.\n" - }, - "sdkTransactionId": { - "type": "string", - "maxLength": 36, - "description": "SDK unique transaction identifier that is generated on each new transaction.\n" - }, - "signedParesStatusReason": { - "type": "string", - "maxLength": 2, - "description": "Provides additional information as to why the PAResStatus has a specific value.\n" - }, - "specificationVersion": { - "type": "string", - "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" - }, - "stepUpUrl": { - "type": "string", - "maxLength": 2048, - "description": "The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.\n" - }, - "threeDSServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" - }, - "ucafAuthenticationData": { - "type": "string", - "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" - }, - "ucafCollectionIndicator": { - "type": "string", - "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" - }, - "veresEnrolled": { - "type": "string", - "description": "Result of the enrollment check. This field can contain one of these values:\n- `Y`: Card enrolled or can be enrolled; you must authenticate. Liability shift.\n- `N`: Card not enrolled; proceed with authorization. Liability shift.\n- `U`: Unable to authenticate regardless of the reason. No liability shift.\n\n**Note** This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for\nthis processor, you must send the value of this field in your authorization request.\n\nThe following value can be returned if you are using rules-based Payer Authentication:\n- `B`: Indicates that authentication was bypassed.\n\nFor details, see `pa_enroll_veres_enrolled` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" - }, - "whiteListStatusSource": { - "type": "string", - "maxLength": 2, - "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" - }, - "xid": { - "type": "string", - "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" - }, - "directoryServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - `EXPIRED_CARD`\n - `SCORE_EXCEEDS_THRESHOLD`\n - `DECISION_PROFILE_REVIEW`\n - `DECISION_PROFILE_REJECT`\n - `CONSUMER_AUTHENTICATION_REQUIRED`\n - `INVALID_MERCHANT_CONFIGURATION`\n - `CONSUMER_AUTHENTICATION_FAILED`\n - `DECISION_PROFILE_CHALLENGE`\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" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "riskV1DecisionsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - `INVALID_REQUEST`\n - `DECLINED`\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - `MISSING_FIELD`\n - `INVALID_DATA`\n - `INVALID_ACCOUNT`\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "riskV1DecisionsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Basic DM Transaction", - "sample-name": "Create Decision Manager Case", - "value": { - "clientReferenceInformation": { - "code": "54323007", - "comments": "decision manager case", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007", - "comments": "decision manager case", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "id": "5526663169230178269497", - "riskInformation": { - "score": "H", - "localTime": "12:11:56", - "infoCodes": { - "address": [ - "COR-BA", - "MM-BIN" - ] - }, - "profile": { - "name": "Example", - "selectorRule": "Default Active Profile" - }, - "rules": [ - { - "decision": "IGNORE", - "name": "Correctable errors in addresses" - }, - { - "decision": "REVIEW", - "name": "Order is above your AFS threshold for review." - }, - { - "decision": "IGNORE", - "name": "CVN not submitted" - } - ], - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A.", - "binCountry": "PL" - }, - "providers": {}, - "casePriority": "3" - }, - "status": "ACCEPTED", - "submitTimeUtc": "2019-03-13T16:12:00Z" - } - }, - "example1": { - "summary": "DM With Device Information", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "deviceInformation": { - "cookiesAccepted": "yes", - "hostName": "host.com", - "httpBrowserEmail": "xyz@gmail.com", - "userAgent": "Chrome", - "ipAddress": "64.124.61.215" - } - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" - }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" - }, - "rules": [ - { - "decision": "IGNORE", - "name": "Correctable errors in addresses" - }, - { - "decision": "REVIEW", - "name": "Order is above your AFS threshold for review." - }, - { - "decision": "IGNORE", - "name": "CVN not submitted" - } - ], - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." - }, - "casePriority": "3" - }, - "ipAddress": { - "country": "us", - "city": "seattle", - "state": "wa", - "routingMethod": "fixed" - } - } - }, - "example2": { - "summary": "DM With Merchant Defined Information", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "riskInformation": { - "auxiliaryData": [ - { - "key": "1", - "value": "Test" - }, - { - "key": "2", - "value": "Test2" - } - ] - }, - "merchantDefinedInformation": [ - { - "key": "1", - "value": "Test" - }, - { - "key": "2", - "value": "Test2" - } - ] - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" - }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" - }, - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." - }, - "casePriority": "3" - }, - "rules": [ - { - "decision": "REJECT", - "name": "Incorrect merchant defined data " - } - ] - } - }, - "example3": { - "summary": "DM With Travel Information", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "travelInformation": { - "completeRoute": "SFO-JFK:JFK-BLR", - "departureTime": "2011-03-20 11:30pm GMT", - "journeyType": "One way", - "legs": [ - { - "destination": "JFK", - "origination": "SFO" - }, - { - "destination": "BLR", - "origination": "JFK" - } - ] - } - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" - }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" - }, - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." - }, - "casePriority": "3" - }, - "rules": [ - { - "decision": "IGNORE", - "name": "Correctable errors in addresses" - } - ] - } - }, - "example4": { - "summary": "DM With Buyer Information", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "buyerInformation": { - "hashedPassword": "", - "dateOfBirth": "19980505", - "personalIdentification": [ - { - "id": "1a23apwe98", - "type": "CPF" - } - ] - } - }, - "responseValue": { - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" - }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" - }, - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." - }, - "casePriority": "3" - }, - "rules": [ - { - "decision": "REJECT", - "name": "Incorrect BUYER data " - } - ] - } - }, - "example5": { - "summary": "DM With Shipping Information", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - }, - "shipTo": { - "address1": "96, powers street", - "address2": "", - "locality": "Clearwater milford", - "country": "IN", - "firstName": "James", - "lastName": "Smith", - "phoneNumber": "7606160717", - "administrativeArea": "KA", - "postalCode": "560056" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007" - }, - "id": "5526665686910178269497", - "riskInformation": { - "score": { - "result": "99", - "modelUsed": "default" - }, - "localTime": "10:02:05", - "profile": { - "name": "Profile 1_test", - "selectorRule": "Default Active Profile" - }, - "infoCodes": { - "address": [ - "MM-A" - ] - }, - "rules": [ - { - "decision": "IGNORE", - "name": "Correctable errors in addresses" - }, - { - "decision": "REVIEW", - "name": "Order is above your AFS threshold for review." - }, - { - "decision": "IGNORE", - "name": "CVN not submitted" - } - ], - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." - }, - "casePriority": "3" - } - } - }, - "example6": { - "summary": "DM With Score_Exceeds_Threshold Response", - "sample-name": "DM With Score_Exceeds_Threshold Response", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - }, - "shipTo": { - "address1": "96, powers street", - "address2": "", - "locality": "Clearwater milford", - "country": "IN", - "firstName": "James", - "lastName": "Smith", - "phoneNumber": "7606160717", - "administrativeArea": "KA", - "postalCode": "560056" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007" - }, - "errorInformation": { - "reason": "SCORE_EXCEEDS_THRESHOLD", - "message": "Soft Decline - Fraud score exceeds threshold." - }, - "id": "5525558950470178269497", - "riskInformation": { - "score": { - "result": "90", - "factorCodes": [ - "D", - "Y" - ], - "modelUsed": "default" - }, - "localTime": "05:31:35", - "infoCodes": { - "address": [ - "COR-BA", - "MM-BIN" - ] - }, - "ipAddress": { - "country": "us", - "city": "seattle", - "state": "wa", - "routingMethod": "fixed" - } - }, - "status": "REJECTED", - "submitTimeUtc": "2019-03-14T09:31:35Z" - } - }, - "example7": { - "summary": "DM With Decision_Profile_Reject Response", - "sample-name": "DM With Decision_Profile_Reject Response", - "value": { - "clientReferenceInformation": { - "code": "54323007" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2020", - "number": "4444444444444448" - } - }, - "orderInformation": { - "billTo": { - "firstName": "James", - "lastName": "Smith", - "locality": "Clearwater milford", - "address1": "96, powers street", - "email": "test@visa.com", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "phoneNumber": "7606160717" - }, - "amountDetails": { - "currency": "USD", - "totalAmount": "144.14" - } - }, - "riskInformation": { - "profile": { - "name": "profile2" - }, - "score": { - "ignoreAvsResults": "false" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007" - }, - "errorInformation": { - "reason": "DECISION_PROFILE_REJECT", - "message": "The order has been rejected by Decision Manager" - }, - "id": "5525558833540178269497", - "riskInformation": { - "score": { - "result": "96", - "factorCodes": [ - "H", - "V", - "Y" - ], - "modelUsed": "default" - }, - "localTime": "05:31:23", - "infoCodes": { - "address": [ - "COR-BA", - "MM-BIN" - ] - }, - "profile": { - "destinationQueue": "Example", - "name": "profile2", - "selectorRule": "Default Active Profile" - }, - "rules": [ - { - "decision": "IGNORE", - "name": "Correctable errors in addresses" - }, - { - "decision": "REVIEW", - "name": "Order is above your AFS threshold for review." - }, - { - "decision": "IGNORE", - "name": "CVN not submitted" - } - ], - "paymentInformation": { - "scheme": "VISA CREDIT", - "bin": "444444", - "accountType": "GOLD", - "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A.", - "binCountry": "PL" - }, - "casePriority": "3" - }, - "status": "REJECTED", - "submitTimeUtc": "2019-03-14T09:31:29Z" - } - } - } - } - }, - "/risk/v1/authentication-setups": { - "post": { - "summary": "Setup Payer Auth", - "description": "A new service for Merchants to get reference_id for Digital Wallets to use in place of BIN number in Cardinal. Set up file while authenticating with Cardinal. This service should be called by Merchant when payment instrument chosen or changes. This service has to be called before enrollment check.", - "operationId": "payerAuthSetup", - "tags": [ - "Payer Authentication" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "x-devcenter-metaData": { - "categoryTag": "Payer_Authentication" - }, - "parameters": [ - { - "name": "payerAuthSetupRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "required": [ - "expirationMonth", - "expirationYear", - "number" - ], - "properties": { - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "required": [ - "transactionType", - "type", - "expirationMonth", - "expirationYear", - "number" - ], - "properties": { - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - } - } - }, - "fluidData": { - "type": "object", - "required": [ - "value" - ], - "properties": { - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 16, - "maxLength": 22 - } - } - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - } - } - }, - "tokenInformation": { - "type": "object", - "properties": { - "transientToken": { - "type": "string", - "description": "A temporary ID that represents the customer's payment data (which is securely stored in Visa Data Centers). Flex\nMicroform generates this ID and sets it to expire within 15 minutes from when the ID is generated or until the\nfirst payment authorization is carried out (whichever occurs first).\n\nValid value for the ID is a 64-character, alphanumeric string.\n\nExample: 1D08M4YB968R1F7YVL4TBBKYVNRIR02VZFH9CBYSQIJJXORPI1NK5C98D7F6EB53\n" - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Setup completed", - "schema": { - "title": "riskV1AuthenticationSetupsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status for payerAuthentication 201 setup calls. Possible value is:\n- COMPLETED\n- FAILED\n" - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "accessToken": { - "type": "string", - "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" - }, - "referenceId": { - "type": "string", - "maxLength": 50, - "description": "This identifier represents cardinal has started device data collection session and this must be passed in\nAuthentication JWT to Cardinal when invoking the deviceDataCollectionUrl.\n" - }, - "deviceDataCollectionUrl": { - "type": "string", - "maxLength": 100, - "description": "The deviceDataCollectionUrl is the location to send the Authentication JWT when invoking the Device Data collection process.\n" - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - EXPIRED_CARD\n - GENERAL_DECLINE\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" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "riskV1AuthenticationsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status for payerAuthentication 400 setup calls. Possible values are:\n- INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value is:\n- Encountered a Payer Authentication problem. Payer could not be setup.\n" - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "riskV1AuthenticationsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Setup Completion with Card Number", - "value": { - "clientReferenceInformation": { - "code": "cybs_test", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2025", - "number": "4000000000000101", - "type": "001" - } - } - } - }, - "example1": { - "summary": "Setup Completion with Fluid Data Value and Payment Solution", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "paymentInformation": { - "fluidData": { - "value": "eyJkYXRhIjoiOFJTK2o1a2ZLRjZkTnkzNVwvOTluR3ZEVis0WUVlaStBb2VmUUNMXC9SNTN0TnVMeHJxTzh4b1g2SnBScm9WWUVUOUNvUkhIWFZMRjJNSVNIZlVtM25UczltdGFPTUdqcW1oeWdjTFpWVWI3OHhxYVVUT2JwWUxLelY0dFR1QmhvRkV4UVJ1d2lvTmo2bXJsRlRjUm5LNzdcL2lCR01yYVlZcXZTVnhGK3ViK1JXK3BGeTRDNUVUOVhmcHBkS2xHYXVpODdzcTBtYVlYVk9qOGFaNTFMWjZvS1NKZkR1clhvWEtLNHRqd1wvaDVRK1dcL0x2dnJxSUhmZmVhK21MZXVRY3RHK0k3UUN6MTRpVmdROUFEMW1oWFUrbVdwZXRUQWZ5WXhoVituZlh1NlpISGRDWFV1cUp6djQydHg4UlwvN0lvdld5OWx6Z0N3YnpuclVsY3pUcThkb3JtV3A4eXhYQklDNnJHRTdlTVJrS3oxZFwvUFFDXC9DS2J1NDhNK0R4XC9VejNoUFwvZ1NnRGoxakJNcUllUUZiRWFzcTRWTUV1ZG9FNUh1UjBcLzRQMXJmdG9EVlpwNnhFdnF1STY5dkt2YnZHcXpmTkpUNjVnPT0iLCJ2ZXJzaW9uIjoiRUNfdjEiLCJoZWFkZXIiOnsiYXBwbGljYXRpb25EYXRhIjoiNzQ2NTczNzQ2MTcwNzA2QzY5NjM2MTc0Njk2RjZFNjQ2MTc0NjEiLCJ0cmFuc2FjdGlvbklkIjoiNzQ2NTczNzQ3NDcyNjE2RTczNjE2Mzc0Njk2RjZFNjk2NCIsImVwaGVtZXJhbFB1YmxpY0tleSI6Ik1JSUJTekNDQVFNR0J5cUdTTTQ5QWdFd2dmY0NBUUV3TEFZSEtvWkl6ajBCQVFJaEFQXC9cL1wvXC84QUFBQUJBQUFBQUFBQUFBQUFBQUFBXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9NRnNFSVBcL1wvXC9cLzhBQUFBQkFBQUFBQUFBQUFBQUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC84QkNCYXhqWFlxanFUNTdQcnZWVjJtSWE4WlIwR3NNeFRzUFk3emp3K0o5SmdTd01WQU1TZE5naUc1d1NUYW1aNDRST2RKcmVCbjM2UUJFRUVheGZSOHVFc1FrZjR2T2JsWTZSQThuY0RmWUV0NnpPZzlLRTVSZGlZd3BaUDQwTGlcL2hwXC9tNDduNjBwOEQ1NFdLODR6VjJzeFhzN0x0a0JvTjc5UjlRSWhBUFwvXC9cL1wvOEFBQUFBXC9cL1wvXC9cL1wvXC9cL1wvXC8rODV2cXRweGVlaFBPNXlzTDhZeVZSQWdFQkEwSUFCQmJHK2xtTHJIWWtKSVwvSUUwcTU3dEN0bE5jK2pBWHNudVMrSnFlOFVcLzc0cSs5NVRnbzVFRjBZNks3b01LTUt5cTMwY3VQbmtIenkwMjVpU1BGdWczRT0iLCJwdWJsaWNLZXlIYXNoIjoieCtQbUhHMzdUNjdBWUFIenVqbGJyaW1JdzZZaFlYaVpjYjV3WnJCNGpRdz0ifSwic2lnbmF0dXJlIjoiTUlJRFFnWUpLb1pJaHZjTkFRY0NvSUlETXpDQ0F5OENBUUV4Q3pBSkJnVXJEZ01DR2dVQU1Bc0dDU3FHU0liM0RRRUhBYUNDQWlzd2dnSW5NSUlCbEtBREFnRUNBaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWRCUUF3SnpFbE1DTUdBMVVFQXg0Y0FHTUFhQUJ0QUdFQWFRQkFBSFlBYVFCekFHRUFMZ0JqQUc4QWJUQWVGdzB4TkRBeE1ERXdOakF3TURCYUZ3MHlOREF4TURFd05qQXdNREJhTUNjeEpUQWpCZ05WQkFNZUhBQmpBR2dBYlFCaEFHa0FRQUIyQUdrQWN3QmhBQzRBWXdCdkFHMHdnWjh3RFFZSktvWklodmNOQVFFQkJRQURnWTBBTUlHSkFvR0JBTkM4K2tndGdtdldGMU96amdETnJqVEVCUnVvXC81TUt2bE0xNDZwQWY3R3g0MWJsRTl3NGZJWEpBRDdGZk83UUtqSVhZTnQzOXJMeXk3eER3YlwvNUlrWk02MFRaMmlJMXBqNTVVYzhmZDRmek9wazNmdFphUUdYTkxZcHRHMWQ5VjdJUzgyT3VwOU1NbzFCUFZyWFRQSE5jc005OUVQVW5QcWRiZUdjODdtMHJBZ01CQUFHalhEQmFNRmdHQTFVZEFRUlJNRStBRUhaV1ByV3RKZDdZWjQzMWhDZzdZRlNoS1RBbk1TVXdJd1lEVlFRREhod0FZd0JvQUcwQVlRQnBBRUFBZGdCcEFITUFZUUF1QUdNQWJ3QnRnaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWRCUUFEZ1lFQWJVS1lDa3VJS1M5UVEybUZjTVlSRUltMmwrWGc4XC9KWHYrR0JWUUprT0tvc2NZNGlOREZBXC9iUWxvZ2Y5TExVODRUSHdOUm5zdlYzUHJ2N1JUWTgxZ3EwZHRDOHpZY0FhQWtDSElJM3lxTW5KNEFPdTZFT1c5a0prMjMyZ1NFN1dsQ3RIYmZMU0tmdVNnUVg4S1hRWXVaTGsyUnI2M044QXBYc1h3QkwzY0oweGdlQXdnZDBDQVFFd096QW5NU1V3SXdZRFZRUURIaHdBWXdCb0FHMEFZUUJwQUVBQWRnQnBBSE1BWVFBdUFHTUFid0J0QWhCY2wrUGYzK1U0cGsxM25WRDlud1FRTUFrR0JTc09Bd0lhQlFBd0RRWUpLb1pJaHZjTkFRRUJCUUFFZ1lBMG9MXC9KSWFTN0tra1RFNG1pOGRmU2tQVVwvdlp2cVwva2NYZ1pUdGJZbENtTFM4YzNuS2VZNVE0c2s4MXJnZkI1ampBMWJRZldhUHBKc05tVWNSS3gzS0FGUEtpNzE0WWVYdGUrcmc2V1k4MnVxcnlwRERiTkhqSWVpNjVqV0dvcGRZUEx6TEk5c1Z3NDh5OHlqSXY3SjFaQVlycnp6YjBwNzUzcUJUQ0ZEN1p3PT0ifQ==" - } - }, - "processingInformation": { - "paymentSolution": "001" - } - } - }, - "example2": { - "summary": "Setup Completion with Tokenized Card", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "paymentInformation": { - "tokenizedCard": { - "number": "4111111111111111", - "transactionType": "1", - "type": "001", - "expirationMonth": "11", - "expirationYear": "2025" - } - } - } - }, - "example3": { - "summary": "Setup Completion with TMS Token", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "paymentInformation": { - "customer": { - "customerId": "9CADDE97CC9254EBE0534136CF0AB358" - } - } - } - }, - "example4": { - "summary": "Setup Completion with Visa Checkout", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "paymentInformation": { - "visaCheckoutId": "4768462067836455354", - "paymentSolution": "visacheckout" - } - } - }, - "example5": { - "summary": "Setup Completion with Flex Transient Token", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "tokenInformation": { - "transientToken": "1D5ZX4HMOV20FKEBE3IO240JWYJ0NJ90B4V9XQ6SCK4BDN0W96E65E2A39052056" - } - } - }, - "example6": { - "summary": "Setup Completion with Secure Storage Token", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "paymentInformation": { - "customer": { - "customerId": "5795045921830181636348" - } - } - } - } - } - } - }, - "/risk/v1/authentications": { - "post": { - "summary": "Check Payer Auth Enrollment", - "description": "This call verifies that the card is enrolled in a card authentication program.", - "operationId": "checkPayerAuthEnrollment", - "tags": [ - "Payer Authentication" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "x-devcenter-metaData": { - "categoryTag": "Payer_Authentication" - }, - "parameters": [ - { - "name": "checkPayerAuthEnrollmentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains `currency` and `totalAmount` for this order.", - "required": [ - "currency", - "totalAmount" - ], - "properties": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" - } - } - }, - "preOrder": { - "type": "string", - "description": "Indicates whether cardholder is placing an order with a future availability or release date.\nThis field can contain one of these values:\n- MERCHANDISE_AVAILABLE: Merchandise available\n- FUTURE_AVAILABILITY: Future availability\n" - }, - "preOrderDate": { - "type": "string", - "maxLength": 10, - "description": "Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD\n" - }, - "reordered": { - "type": "boolean", - "description": "Indicates whether the cardholder is reordering previously purchased merchandise.\nThis field can contain one of these values:\n- false: First time ordered\n- true: Reordered\n" - }, - "shipTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "destinationTypes": { - "type": "string", - "maxLength": 25, - "description": "Shipping destination of item. Example: Commercial, Residential, Store\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "destinationCode": { - "type": "integer", - "maxLength": 2, - "description": "Indicates destination chosen for the transaction. Possible values:\n- 01- Ship to cardholder billing address\n- 02- Ship to another verified address on file with merchant\n- 03- Ship to address that is different than billing address\n- 04- Ship to store (store address should be populated on request)\n- 05- Digital goods\n- 06- Travel and event tickets, not shipped\n- 07- Other\n" - }, - "method": { - "type": "string", - "maxLength": 10, - "description": "Shipping method for the product. Possible values:\n- lowcost: Lowest-cost service\n- sameday: Courier or same-day service\n- oneday: Next-day or overnight service\n- twoday: Two-day service\n- threeday: Three-day service\n- pickup: Store pick-up\n- other: Other shipping method\n- none: No shipping method because product is a service or subscription\nRequired for American Express SafeKey (U.S.).\n" - } - } - }, - "lineItems": { - "type": "array", - "description": "This array contains detailed information about individual products in the order.", - "items": { - "type": "object", - "required": [ - "unitPrice" - ], - "properties": { - "totalAmount": { - "type": "string", - "maxLength": 13, - "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "giftCardCurrency": { - "type": "integer", - "maxLength": 3, - "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" - }, - "productSKU": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productDescription": { - "type": "string", - "description": "Brief description of item." - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "passenger": { - "type": "object", - "description": "Contains travel-related passenger details used by DM service only.", - "properties": { - "type": { - "type": "string", - "maxLength": 32, - "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" - }, - "status": { - "type": "string", - "maxLength": 32, - "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" - }, - "phone": { - "type": "string", - "maxLength": 15, - "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's first name." - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Passenger's last name." - }, - "id": { - "type": "string", - "maxLength": 40, - "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." - }, - "nationality": { - "type": "string", - "maxLength": 2, - "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." - } - } - }, - "shippingDestinationTypes": { - "type": "string", - "maxLength": 50, - "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - } - } - } - }, - "billTo": { - "type": "object", - "required": [ - "address1", - "country", - "administrativeArea", - "postalCode", - "email", - "firstName", - "lastName" - ], - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - } - } - }, - "totalOffersCount": { - "type": "string", - "maxLength": 2, - "description": "Total number of articles/items in the order as a numeric decimal count.\nPossible values: 00 - 99\n" - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "required": [ - "type", - "expirationMonth", - "expirationYear", - "number" - ], - "properties": { - "bin": { - "type": "string", - "maxLength": 6, - "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "required": [ - "type", - "expirationMonth", - "expirationYear", - "number", - "transactionType", - "cryptogram", - "securityCode" - ], - "properties": { - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "cryptogram": { - "type": "string", - "maxLength": 255, - "description": "This field contains token information." - }, - "securityCode": { - "type": "string", - "maxLength": 4, - "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - } - } - }, - "fluidData": { - "type": "object", - "required": [ - "value" - ], - "properties": { - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - } - } - }, - "tokenInformation": { - "type": "object", - "properties": { - "transientToken": { - "type": "string", - "description": "A temporary ID that represents the customer's payment data (which is securely stored in Visa Data Centers). Flex\nMicroform generates this ID and sets it to expire within 15 minutes from when the ID is generated or until the\nfirst payment authorization is carried out (whichever occurs first).\n\nValid value for the ID is a 64-character, alphanumeric string.\n\nExample: 1D08M4YB968R1F7YVL4TBBKYVNRIR02VZFH9CBYSQIJJXORPI1NK5C98D7F6EB53\n" - } - } - }, - "buyerInformation": { - "type": "object", - "required": [ - "mobilePhone" - ], - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "personalIdentification": { - "description": "This array contains detailed information about the buyer's form of persoanl identification.", - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" - }, - "issuedBy": { - "type": "string", - "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "verificationResults": { - "type": "string", - "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" - } - } - } - }, - "mobilePhone": { - "type": "integer", - "maxLength": 25, - "description": "Cardholder\u2019s mobile phone number.\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "rawData": { - "type": "array", - "items": { - "type": "object", - "properties": { - "data": { - "type": "string", - "description": "Field that contains the device fingerprint data from the specified provider. The value should be Base64 encoded.\n" - }, - "provider": { - "type": "string", - "maxLength": 32, - "description": "Possible values:\n- cardinal\n- inauth\n- threatmetrix\n" - } - } - } - }, - "httpAcceptBrowserValue": { - "type": "string", - "maxLength": 255, - "description": "Value of the Accept header sent by the customer\u2019s web browser.\n**Note** If the customer\u2019s browser provides a value, you must include it in your request.\n" - }, - "httpAcceptContent": { - "type": "string", - "maxLength": 256, - "description": "The exact content of the HTTP accept header.\n" - }, - "httpBrowserLanguage": { - "type": "string", - "maxLength": 8, - "description": "Value represents the browser language as defined in IETF BCP47.\nExample:en-US, refer https://en.wikipedia.org/wiki/IETF_language_tag for more details.\n" - }, - "httpBrowserJavaEnabled": { - "type": "boolean", - "description": "A Boolean value that represents the ability of the cardholder browser to execute Java.\nValue is returned from the navigator.javaEnabled property. Possible Values:True/False\n" - }, - "httpBrowserJavaScriptEnabled": { - "type": "boolean", - "description": "A Boolean value that represents the ability of the cardholder browser to execute JavaScript. Possible Values:True/False.\n**Note**: Merchants should be able to know the values from fingerprint details of cardholder's browser.\n" - }, - "httpBrowserColorDepth": { - "type": "string", - "maxLength": 2, - "description": "Value represents the bit depth of the color palette for displaying images, in bits per pixel.\nExample : 24, refer https://en.wikipedia.org/wiki/Color_depth for more details\n" - }, - "httpBrowserScreenHeight": { - "type": "string", - "maxLength": 6, - "description": "Total height of the Cardholder's scree in pixels, example: 864.\n" - }, - "httpBrowserScreenWidth": { - "type": "string", - "maxLength": 6, - "description": "Total width of the cardholder's screen in pixels. Example: 1536.\n" - }, - "httpBrowserTimeDifference": { - "type": "string", - "maxLength": 5, - "description": "Time difference between UTC time and the cardholder browser local time, in minutes, Example:300\n" - }, - "userAgentBrowserValue": { - "type": "string", - "maxLength": 255, - "description": "Value of the User-Agent header sent by the customer\u2019s web browser.\nNote If the customer\u2019s browser provides a value, you must include it in your request.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "url": { - "type": "string", - "maxLength": 255, - "description": "Address of company's website provided by merchant\n" - } - } - }, - "merchantName": { - "type": "string", - "maxLength": 25, - "description": "Your company\u2019s name as you want it to appear to the customer in the issuing bank\u2019s authentication form.\nThis value overrides the value specified by your merchant bank.\n" - } - } - }, - "acquirerInformation": { - "type": "object", - "properties": { - "acquirerBin": { - "type": "string", - "maxLength": 11, - "description": "Acquirer bank ID number that corresponds to a certificate that Cybersource already has.This ID has this format. 4XXXXX for Visa and 5XXXXX for Mastercard.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Issuers need to be aware of the Acquirer's Country Code when the Acquirer country differs from the Merchant country and the Acquirer is in the EEA (European Economic Area).\n" - }, - "password": { - "type": "string", - "maxLength": 8, - "description": "Registered password for the Visa directory server.\n" - }, - "merchantId": { - "type": "string", - "maxLength": 15, - "description": "Username for the visa directory server that is created when your acquirer sets up your account. This ID might be the same as your merchant ID. the username can be 15 or 23 characters.\n" - } - } - }, - "recurringPaymentInformation": { - "type": "object", - "description": "This object contains recurring payment information.", - "properties": { - "endDate": { - "type": "string", - "maxLength": 10, - "description": "The date after which no further recurring authorizations should be performed. Format: `YYYY-MM-DD`\n**Note** This field is required for recurring transactions.\n" - }, - "frequency": { - "type": "integer", - "maxLength": 4, - "description": "Integer value indicating the minimum number of days between recurring authorizations. A frequency\nof monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months.\n\nExample: 6 months = 168\n\nExample values accepted (31 days):\n- 31\n- 031\n- 0031\n\n**Note** This field is required for recurring transactions.\n" - }, - "numberOfPayments": { - "type": "integer", - "maxLength": 3, - "description": "Total number of payments for the duration of the recurring subscription.\n" - }, - "originalPurchaseDate": { - "type": "string", - "maxLength": 17, - "description": "Date of original purchase. Required for recurring transactions.\nFormat: `YYYY-MM-DDTHH:MM:SSZ`\n**Note**: If this field is empty, the current date is used.\n" - }, - "sequenceNumber": { - "type": "integer", - "maxLength": 3, - "description": "This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC. \nThis field records recurring sequence, e.g. 1st for initial, 2 for subsequent, 3 etc\n" - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "strongAuthentication": { - "type": "object", - "properties": { - "authenticationIndicator": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of Authentication request\n\n01 - Payment transaction\n\n02 - Recurring transaction\n\n03 - Installment transaction\n\n04 - Add card\n\n05 - Maintain card\n\n06 - Cardholder verification as part of EMV token ID and V\n" - } - } - }, - "authenticationType": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" - }, - "acsWindowSize": { - "type": "string", - "maxLength": 2, - "description": "An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.\n\n01 - 250x400\n\n02 - 390x400\n\n03 - 500x600\n\n04 - 600x400\n\n05 - Full page\n" - }, - "alternateAuthenticationData": { - "type": "string", - "maxLength": 2048, - "description": "Data that documents and supports a specific authentication process.\n" - }, - "alternateAuthenticationDate": { - "type": "string", - "maxLength": 14, - "description": "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM\n" - }, - "alternateAuthenticationMethod": { - "type": "string", - "description": "Mechanism used by the cardholder to authenticate to the 3D Secure requestor.\nPossible values:\n- `01`: No authentication occurred\n- `02`: Login using merchant system credentials\n- `03`: Login using Federated ID\n- `04`: Login using issuer credentials\n- `05`: Login using third-party authenticator\n- `06`: Login using FIDO Authenticator\n" - }, - "authenticationDate": { - "type": "string", - "maxLength": 14, - "description": "The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request\npayload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be\nprovided by merchant in authorization request if calling an external 3DS provider.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\nFormat: YYYYMMDDHHMMSS\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" - }, - "transactionFlowIndicator": { - "type": "integer", - "maxLength": 2, - "description": "This field is only applicable to Rupay and is optional. Merchant will have to pass a valid value from 01 through 07 which indicates the transaction flow. Below are the possible values.\n01:NW \u2013 Transaction performed at domestic merchant.\n02:TW - Transaction performed at domestic merchant along with Token provisioning.\n03:IT \u2013 Transaction performed at International merchant.\n04:AT- Authentication Transaction Only.\n05:AW- Authentication transaction for provisioning.\n06:DI- Domestic InApp Transaction.\n07:II- International InApp transaction.\n" - }, - "challengeCancelCode": { - "type": "string", - "maxLength": 2, - "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" - }, - "challengeCode": { - "type": "string", - "description": "Possible values:\n- `01`: No preference\n- `02`: No challenge request\n- `03`: Challenge requested (3D Secure requestor preference)\n- `04`: Challenge requested (mandate)\n- `05`: No challenge requested (transactional risk analysis is already performed)\n- `06`: No challenge requested (Data share only)\n- `07`: No challenge requested (strong consumer authentication is already performed)\n- `08`: No challenge requested (utilize whitelist exemption if no challenge required)\n- `09`: Challenge requested (whitelist prompt requested if challenge required)\n**Note** This field will default to `01` on merchant configuration and can be overridden by the merchant.\nEMV 3D Secure version 2.1.0 supports values `01-04`. Version 2.2.0 supports values `01-09`.\n\nFor details, see `pa_challenge_code` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html)\n" - }, - "challengeStatus": { - "type": "string", - "maxLength": 2, - "description": "The `consumerAuthenticationInformation.challengeCode` indicates the authentication type/level, or challenge, that was presented to the cardholder\nat checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to\nthe issuer the alternative authentication methods that the consumer used.\n" - }, - "customerCardAlias": { - "type": "string", - "maxLength": 128, - "description": "An alias that uniquely identifies the customer's account and credit card on file.\nNote This field is required if Tokenization is enabled in the merchant profile settings.\n" - }, - "decoupledAuthenticationIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" - }, - "decoupledAuthenticationMaxTime": { - "type": "string", - "maxLength": 5, - "description": "Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes).\nPossible Values: Numeric values between 1 and 10080 accepted.\n" - }, - "defaultCard": { - "type": "boolean", - "description": "Indicates that the card being used is the one designated as the primary payment card for purchase.\nRecommended for Discover ProtectBuy.\n" - }, - "deviceChannel": { - "type": "string", - "maxLength": 10, - "description": "Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.\n" - }, - "installmentTotalCount": { - "type": "integer", - "maxLength": 4, - "description": "An integer value greater than 1 indicating the max number of permitted authorizations for installment payments.\n**Note** This is required if the merchant and cardholder have agreed to installment payments.\n" - }, - "merchantFraudRate": { - "type": "string", - "maxLength": 2, - "description": "Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes).\nPossible Values:\n1 = Represents fraud rate <=1\n\n2 = Represents fraud rate >1 and <=6\n\n3 = Represents fraud rate >6 and <=13\n\n4 = Represents fraud rate >13 and <=25\n\n5 = Represents fraud rate >25\n\nEEA** = European Economic Area\nRTS** = Regulatory Technical Standards\nPSD2** = Payment Services Directive\n" - }, - "marketingOptIn": { - "type": "boolean", - "description": "Indicates whether the customer has opted in for marketing offers.\nRecommended for Discover ProtectBuy.\n" - }, - "marketingSource": { - "type": "string", - "maxLength": 40, - "description": "Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.\n" - }, - "mcc": { - "type": "string", - "maxLength": 4, - "description": "Merchant category code.\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "merchantScore": { - "type": "integer", - "maxLength": 2, - "description": "Risk Score provided by merchants. This is specific for CB transactions.\n" - }, - "messageCategory": { - "type": "string", - "description": "Category of the message for a specific use case. Possible values:\n\n- `01`: PA- payment authentication\n- `02`: NPA- non-payment authentication\n- `03-79`: Reserved for EMVCo future use (values invalid until defined by EMVCo)\n- `80-99`: Reserved for DS use\n" - }, - "npaCode": { - "type": "string", - "maxLength": 2, - "description": "Non-Payer Authentication Indicator.\nPossible values:\n- `01`: Add card\n- `02`: Maintain card information\n- `03`: Cardholder verification for EMV token\n- `04-80` Reserved for EMVCo\n- `80-90` Reserved DS\n" - }, - "overridePaymentMethod": { - "type": "string", - "description": "Specifies the Brazilian payment account type used for the transaction.\nThis field overrides other payment types that might be specified in the request.\nUse one of the following values for this field:\n- `NA`: Not applicable. Do not override other payment types that are specified in the request.\n- `CR`: Credit card.\n- `DB`: Debit card.\n- `VSAVR`: Visa Vale Refeicao\n- `VSAVA`: Visa Vale Alimentacao\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "overrideCountryCode": { - "type": "string", - "maxLength": 2, - "description": "Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)..\n" - }, - "priorAuthenticationData": { - "type": "string", - "maxLength": 2048, - "description": "This field carry data that the ACS can use to verify the authentication process.\n" - }, - "priorAuthenticationMethod": { - "type": "string", - "maxLength": 2, - "description": "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n\n01 - Frictionless authentication occurred by ACS\n\n02 - Cardholder challenge occurred by ACS\n\n03 - AVS verified\n\n04 - Other issuer methods\n\n05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo)\n\n80-99 - Reserved for DS use\n" - }, - "priorAuthenticationReferenceId": { - "type": "string", - "maxLength": 36, - "description": "This data element contains a ACS Transaction ID for a prior authenticated transaction.\nFor example, the first recurring transaction that was authenticated with the cardholder\n" - }, - "priorAuthenticationTime": { - "type": "string", - "maxLength": 12, - "description": "Date and time in UTC of the prior cardholder authentication. Format \u2013 YYYYMMDDHHMM\n" - }, - "productCode": { - "type": "string", - "maxLength": 3, - "description": "Specifies the product code, which designates the type of transaction.\nSpecify one of the following values for this field:\n- AIR: Airline purchase\nImportant Required for American Express SafeKey (U.S.).\n- `ACC`: Accommodation Rental\n- `ACF`: Account funding\n- `CHA`: Check acceptance\n- `DIG`: Digital Goods\n- `DSP`: Cash Dispensing\n- `GAS`: Fuel\n- `GEN`: General Retail\n- `LUX`: Luxury Retail\n- `PAL`: Prepaid activation and load\n- `PHY`: Goods or services purchase\n- `QCT`: Quasi-cash transaction\n- `REN`: Car Rental\n- `RES`: Restaurant\n- `SVC`: Services\n- `TBD`: Other\n- `TRA`: Travel\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" - }, - "returnUrl": { - "type": "string", - "maxLength": 2048, - "description": "The URL of the merchant\u2019s return page. CyberSource adds this return URL to the step-up JWT and returns it in the\nresponse of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL.\nOnce the bank session completes, the merchant receives a POST to their URL. This response contains the completed\nbank session\u2019s transactionId. The merchant\u2019s return page should capture the transaction ID and send it in the\nPayer Authentication validation call.\n" - }, - "requestorId": { - "type": "string", - "maxLength": 35, - "description": "Cardinal's directory server assigned 3DS Requestor ID value" - }, - "requestorInitiatedAuthenticationIndicator": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of 3RI request.\n\nPossible Values:\n\n01 - Recurring transaction\n\n02 - Installment transaction\n\n03 - Add card\n\n04 - Maintain card\n\n05 - Account verification\n\n06 - Split/delayed shipment\n\n07 - Top-up\n\n08 - Mail Order\n\n09 - Telephone Order\n\n10 - Whitelist status check\n\n11 - Other payment\n" - }, - "requestorName": { - "type": "string", - "maxLength": 40, - "description": "Cardinal's directory server assigned 3DS Requestor Name value" - }, - "referenceId": { - "type": "string", - "maxLength": 50, - "description": "Reference ID that corresponds to the device fingerprinting data that was collected previously.\nNote Required for Hybrid integration.\n" - }, - "sdkMaxTimeout": { - "type": "string", - "maxLength": 2, - "description": "This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes).\n\nPossible Values:\n\nGreater than or equal to 05 (05 is the minimum timeout to set)\n\nCardinal Default is set to 15\n\nNOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed\n" - }, - "secureCorporatePaymentIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies.\nPossible Values : 0/1\n" - }, - "transactionMode": { - "type": "string", - "description": "Transaction mode identifier. Identifies the channel from which the transaction originates.\nPossible values:\n\n- `M`: MOTO (Mail Order Telephone Order)\n- `R`: Retail\n- `S`: eCommerce\n- `P`: Mobile Device\n- `T`: Tablet\n" - }, - "whiteListStatus": { - "type": "string", - "maxLength": 1, - "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" - } - } - }, - "riskInformation": { - "type": "object", - "properties": { - "buyerHistory": { - "type": "object", - "properties": { - "customerAccount": { - "type": "object", - "properties": { - "lastChangeDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder\u2019s account was last changed.\nThis includes changes to the billing or shipping address, new payment accounts or new users added.\nRecommended for Discover ProtectBuy.\n" - }, - "creationHistory": { - "type": "string", - "description": "The values from the enum can be:\n- GUEST\n- NEW_ACCOUNT\n- EXISTING_ACCOUNT\n" - }, - "modificationHistory": { - "type": "string", - "description": "This field is applicable only in case of EXISTING_ACCOUNT in creationHistory. Possible values:\n- ACCOUNT_UPDATED_NOW\n- ACCOUNT_UPDATED_PAST\n" - }, - "passwordHistory": { - "type": "string", - "description": "This only applies for EXISTING_ACCOUNT in creationHistory.\nThe values from the enum can be:\n- PASSWORD_CHANGED_NOW\n- PASSWORD_CHANGED_PAST\n- PASSWORD_NEVER_CHANGED\n" - }, - "createDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder opened the account.\nRecommended for Discover ProtectBuy.\nThis only applies for EXISTING_ACCOUNT in creationHistory.\n" - }, - "passwordChangeDate": { - "type": "string", - "maxLength": 10, - "description": "Date the cardholder last changed or reset password on account.\nRecommended for Discover ProtectBuy.\nThis only applies for PASSWORD_CHANGED_PAST in passwordHistory.\n" - } - } - }, - "accountHistory": { - "type": "object", - "properties": { - "firstUseOfShippingAddress": { - "type": "boolean", - "description": "Applicable when this is not a guest account.\n" - }, - "shippingAddressUsageDate": { - "type": "string", - "maxLength": 10, - "description": "Date when the shipping address for this transaction was first used.\nRecommended for Discover ProtectBuy.\nIf `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.\n" - } - } - }, - "accountPurchases": { - "type": "integer", - "maxLength": 4, - "description": "Number of purchases with this cardholder account during the previous six months.\nRecommended for Discover ProtectBuy.\n" - }, - "addCardAttempts": { - "type": "integer", - "maxLength": 3, - "description": "Number of add card attempts in the last 24 hours.\nRecommended for Discover ProtectBuy.\n" - }, - "priorSuspiciousActivity": { - "type": "boolean", - "description": "Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.\nRecommended for Discover ProtectBuy.\n" - }, - "paymentAccountHistory": { - "type": "string", - "description": "This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are:\n- PAYMENT_ACCOUNT_EXISTS\n- PAYMENT_ACCOUNT_ADDED_NOW\n" - }, - "paymentAccountDate": { - "type": "integer", - "maxLength": 8, - "description": "Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory\n" - }, - "transactionCountDay": { - "type": "integer", - "maxLength": 3, - "description": "Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours.\nRecommended for Discover ProtectBuy.\n" - }, - "transactionCountYear": { - "type": "integer", - "maxLength": 3, - "description": "Number of transaction (successful or abandoned) for this cardholder account within the last year.\nRecommended for Discover ProtectBuy.\n" - } - } - } - } - }, - "travelInformation": { - "type": "object", - "properties": { - "legs": { - "type": "array", - "items": { - "type": "object", - "properties": { - "origination": { - "type": "string", - "maxLength": 3, - "description": "Use to specify the airport code for the origin of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco.\nDo not use the colon (:) or the dash (-). For airport codes, see the IATA Airline and Airport Code Search.\nThe leg number can be a positive integer from 0 to N.\nFor example:\n`travelInformation.legs.0.origination=SFO`\n`travelInformation.legs.1.origination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_orig` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "destination": { - "type": "string", - "maxLength": 3, - "description": "Use to specify the airport code for the destination of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco. Do not use the\ncolon (:) or the dash (-). For airport codes, see [IATA Airline and Airport Code Search](https://www.iata.org/publications/Pages/code-search.aspx). The leg number can be a\npositive integer from 0 to N.\nFor example:\n\n`travelInformation.legs.0.destination=SFO`\n`travelInformation.legs.1.destination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_dest` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "carrierCode": { - "type": "string", - "maxLength": 2, - "description": "International Air Transport Association (IATA) code for the carrier for this leg of the trip.\nRequired for each leg.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - }, - "departureDate": { - "type": "string", - "description": "Departure date for the first leg of the trip. Format: YYYYMMDD.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - } - } - } - }, - "numberOfPassengers": { - "type": "integer", - "maxLength": 3, - "description": "Number of passengers for whom the ticket was issued.\nIf you do not include this field in your request, CyberSource uses a default value of 1.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - }, - "passengers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" - } - } - } - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "items": { - "type": "object", - "description": "Contains merchant-defined key-value pairs.", - "properties": { - "key": { - "type": "string", - "maxLength": 255, - "description": "Fields that you can use to store information. The value\nappears in the Case Management Details window in the\nBusiness Center. The first four fields are the same fields\nthat are used by the Secure Data services. See request\ncode examples.\n**Warning** Merchant-defined data fields are not intended\nto and must not be used to capture personally identifying\ninformation. Accordingly, merchants are prohibited from\ncapturing, obtaining, and/or transmitting any personally\nidentifying information in or via the merchant-defined data\nfields. Personally identifying information includes, but is\nnot limited to, address, credit card number, social security\nnumber, driver's license number, state-issued\nidentification number, passport number, and card\nverification numbers (CVV, CVC2, CVV2, CID, CVN). In\nthe event CyberSource discovers that a merchant is\ncapturing and/or transmitting personally identifying\ninformation via the merchant-defined data fields, whether\nor not intentionally, CyberSource will immediately\nsuspend the merchant's account, which will result in a\nrejection of any and all transaction requests submitted by\nthe merchant after the point of suspension.\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "String value for the key" - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1AuthenticationsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "submitTimeLocal": { - "type": "string", - "description": "Time that the transaction was submitted in local time. Generated by Cybersource." - }, - "status": { - "type": "string", - "description": "The status for payerAuthentication 201 enroll and validate calls. Possible values are:\n- `AUTHENTICATION_SUCCESSFUL`\n- `PENDING_AUTHENTICATION`\n- `INVALID_REQUEST`\n- `AUTHENTICATION_FAILED`\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value is:\n- The cardholder is enrolled in Payer Authentication. Please authenticate\nthe cardholder before continuing with the transaction.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "accessToken": { - "type": "string", - "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" - }, - "acsRenderingType": { - "type": "string", - "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" - }, - "acsTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" - }, - "acsUrl": { - "type": "string", - "maxLength": 2048, - "description": "URL for the card-issuing bank\u2019s authentication form that you receive when the card is enrolled.\nThe value can be very large.\n" - }, - "authenticationPath": { - "type": "string", - "description": "Indicates what displays to the customer during the authentication process.\nThis field can contain one of these values:\n- `ADS`: (Card not enrolled) customer prompted to activate the card during the checkout process.\n- `ATTEMPTS`: (Attempts processing) Processing briefly displays before the checkout process is completed.\n- `ENROLLED`: (Card enrolled) the card issuer\u2019s authentication window displays.\n- `UNKNOWN`: Card enrollment status cannot be determined.\n- `NOREDIRECT`: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer.\n\nThe following values can be returned if you are using rules-based payer authentication.\n- `RIBA`: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely\nto be challenged cannot be determined.\n- `RIBA_PASS`: The card-issuing bank supports risk-based authentication and it is likely that the\ncardholder will not be challenged to provide credentials, also known as _silent authentication_.\n\nFor details about possible values, see `pa_enroll_authentication_path` field description and \"Rules-Based Payer Authentication\"\nin [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" - }, - "authorizationPayload": { - "type": "string", - "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" - }, - "authenticationType": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" - }, - "authenticationTransactionContextId": { - "type": "string", - "maxLength": 30, - "description": "Payer authentication transaction identifier passed to link the validation and authorization calls.\n" - }, - "validityPeriod": { - "type": "integer", - "maxLength": 2, - "description": "Describes validity of OTP in minutes for incoming transaction. .\n" - }, - "cardholderMessage": { - "type": "string", - "maxLength": 128, - "description": "Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder.\nFor example, \u201cAdditional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.\u201d.\nThe Issuing Bank can optionally support this value.\n" - }, - "cavv": { - "type": "string", - "maxLength": 255, - "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" - }, - "cavvAlgorithm": { - "type": "string", - "maxLength": 1, - "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" - }, - "challengeCancelCode": { - "type": "string", - "maxLength": 2, - "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" - }, - "challengeRequired": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether a challenge is required in order to complete authentication.\n**Note** Regional mandates might determine that a challenge is required.\n\nPossible values:\n- `Y`: Challenge required\n- `N`: Challenge not required\n**Note** Used by the Hybrid integration.\n" - }, - "decoupledAuthenticationIndicator": { - "type": "string", - "maxLength": 1, - "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" - }, - "directoryServerErrorCode": { - "type": "string", - "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" - }, - "directoryServerErrorDescription": { - "type": "string", - "maxLength": 4096, - "description": "Directory server text and additional detail about the error for this transaction.\n" - }, - "ecommerceIndicator": { - "type": "string", - "maxLength": 255, - "description": "Commerce indicator for cards not enrolled. This field contains one of these values:\n- `internet`: Card not enrolled, or card type not supported by payer authentication. No liability shift.\n- `js_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `js_failure`: J/Secure directory service is not available. No liability shift.\n- `spa`: Mastercard card not enrolled in the SecureCode program. No liability shift.\n- `vbv_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `vbv_failure`: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive\nthis result if Visa\u2019s directory service is not available. No liability shift.\n" - }, - "eci": { - "type": "string", - "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" - }, - "eciRaw": { - "type": "string", - "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" - }, - "effectiveAuthenticationType": { - "type": "string", - "maxLength": 2, - "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" - }, - "ivr": { - "type": "object", - "properties": { - "enabledMessage": { - "type": "boolean", - "description": "Flag to indicate if a valid IVR transaction was detected.\n" - }, - "encryptionKey": { - "type": "string", - "maxLength": 16, - "description": "Encryption key to be used in the event the ACS requires encryption of the credential field.\n" - }, - "encryptionMandatory": { - "type": "boolean", - "description": "Flag to indicate if the ACS requires the credential to be encrypted.\n" - }, - "encryptionType": { - "type": "string", - "maxLength": 20, - "description": "An indicator from the ACS to inform the type of encryption that should be used in the event the ACS requires encryption of the credential field.\n" - }, - "label": { - "type": "string", - "maxLength": 20, - "description": "An ACS Provided label that can be presented to the Consumer. Recommended use with an application.\n" - }, - "prompt": { - "type": "string", - "maxLength": 80, - "description": "An ACS provided string that can be presented to the Consumer. Recommended use with an application.\n" - }, - "statusMessage": { - "type": "string", - "maxLength": 80, - "description": "An ACS provided message that can provide additional information or details.\n" - } - } - }, - "networkScore": { - "type": "string", - "maxLength": 2, - "description": "The global score calculated by the CB scoring platform and returned to merchants.\n" - }, - "pareq": { - "type": "string", - "description": "Payer authentication request (PAReq) message that you need to forward to the ACS.\nThe value can be very large. The value is in base64.\n" - }, - "paresStatus": { - "type": "string", - "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" - }, - "proofXml": { - "type": "string", - "description": "Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need\nto show proof of enrollment checking, you may need to parse the string for the information required by the\npayment card company. The value can be very large. For details about possible values, see the `pa_enroll_proofxml` field description in\n[CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n- For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.\n- For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment\nchecking for any payer authentication transaction that you re-present because of a chargeback.\n" - }, - "proxyPan": { - "type": "string", - "description": "Encrypted version of the card number used in the payer authentication request message.\n" - }, - "sdkTransactionId": { - "type": "string", - "maxLength": 36, - "description": "SDK unique transaction identifier that is generated on each new transaction.\n" - }, - "signedParesStatusReason": { - "type": "string", - "maxLength": 2, - "description": "Provides additional information as to why the PAResStatus has a specific value.\n" - }, - "specificationVersion": { - "type": "string", - "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" - }, - "stepUpUrl": { - "type": "string", - "maxLength": 2048, - "description": "The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.\n" - }, - "threeDSServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" - }, - "ucafAuthenticationData": { - "type": "string", - "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" - }, - "ucafCollectionIndicator": { - "type": "string", - "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" - }, - "veresEnrolled": { - "type": "string", - "description": "Result of the enrollment check. This field can contain one of these values:\n- `Y`: Card enrolled or can be enrolled; you must authenticate. Liability shift.\n- `N`: Card not enrolled; proceed with authorization. Liability shift.\n- `U`: Unable to authenticate regardless of the reason. No liability shift.\n\n**Note** This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for\nthis processor, you must send the value of this field in your authorization request.\n\nThe following value can be returned if you are using rules-based Payer Authentication:\n- `B`: Indicates that authentication was bypassed.\n\nFor details, see `pa_enroll_veres_enrolled` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" - }, - "whiteListStatusSource": { - "type": "string", - "maxLength": 2, - "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" - }, - "xid": { - "type": "string", - "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" - }, - "directoryServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status. Possible values are:\n- `INVALID_MERCHANT_CONFIGURATION`\n- `CONSUMER_AUTHENTICATION_REQUIRED`\n- `CONSUMER_AUTHENTICATION_FAILED`\n- `AUTHENTICATION_FAILED`\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" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "riskV1AuthenticationsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status for payerAuthentication 201 enroll and validate calls. Value is:\n- `INVALID_REQUEST`\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible Values:\n- `MISSING_FIELD`\n- `INVALID_DATA`\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value is:\n- Encountered a Payer Authentication problem. Payer could not be authenticated.\n" - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "riskV1AuthenticationsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Enroll with Pending Authentication", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "buyerInformation": { - "mobilePhone": "1245789632" - }, - "paymentInformation": { - "card": { - "expirationMonth": "12", - "expirationYear": "2025", - "number": "4000000000000101", - "type": "001" - } - }, - "consumerAuthenticationInformation": { - "transactionMode": "MOTO" - } - } - }, - "example1": { - "summary": "Enroll with Travel Information", - "value": { - "clientReferenceInformation": { - "code": "cybs_test" - }, - "travelInformation": { - "legs": [ - { - "carrierCode": "UA", - "departureDate": "2019-01-01", - "destination": "DEFGH", - "origin": "LAX" - }, - { - "carrierCode": "AS", - "departureDate": "2019-02-21", - "destination": "RESD", - "origin": "ECF" - } - ], - "numberOfPassengers": "2", - "passengers": [ - { - "firstName": "Raj", - "lastName": "Charles" - }, - { - "firstName": "Potter", - "lastName": "Suhember" - } - ] - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "buyerInformation": { - "mobilePhone": "1245789632" - }, - "paymentInformation": { - "card": { - "type": "002", - "expirationMonth": "12", - "expirationYear": "2025", - "number": "5200340000000015" - } - }, - "consumerAuthenticationInformation": { - "transactionMode": "MOTO" - } - } - }, - "example2": { - "summary": "Authentication with NO Redirect", - "value": { - "clientReferenceInformation": { - "code": "cybs_test", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "type": "001", - "expirationMonth": "12", - "expirationYear": "2025", - "number": "4000990000000004" - } - } - } - }, - "example3": { - "summary": "Authentication with New Account", - "value": { - "clientReferenceInformation": { - "code": "New Account" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "type": "001", - "expirationMonth": "12", - "expirationYear": "2025", - "number": "4000990000000004" - } - }, - "consumerAuthenticationInformation": { - "transactionMode": "MOTO" - }, - "riskInformation": { - "buyerHistory": { - "customerAccount": { - "shipAddressUsageDate": "2017-05-06", - "creationHistory": "NEW_ACCOUNT" - }, - "accountHistory": { - "firstUseOfShippingAddress": "false" - } - } - } - } - }, - "example4": { - "summary": "Pending Authentication with Unknown path", - "value": { - "clientReferenceInformation": { - "code": "UNKNOWN" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "paymentInformation": { - "card": { - "type": "001", - "expirationMonth": "12", - "expirationYear": "2025", - "number": "4012001037490014" - } - } - } - }, - "example5": { - "summary": "Enroll with customerId as payment information", - "value": { - "clientReferenceInformation": { - "code": "UNKNOWN" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "paymentInformation": { - "customer": { - "customerId": "9CADDE97CC9254EBE0534136CF0AB358" - } - } - } - }, - "example6": { - "summary": "Enroll with transient token", - "value": { - "clientReferenceInformation": { - "code": "UNKNOWN" - }, - "orderInformation": { - "billTo": { - "firstName": "John", - "lastName": "Doe", - "address2": "Address 2", - "address1": "1 Market St", - "postalCode": "94105", - "locality": "san francisco", - "administrativeArea": "CA", - "country": "US", - "phoneNumber": "4158880000", - "company": "Visa", - "email": "test@cybs.com" - }, - "amountDetails": { - "totalAmount": "10.99", - "currency": "USD" - } - }, - "tokenInformation": { - "transientToken": "1D5ZX4HMOV20FKEBE3IO240JWYJ0NJ90B4V9XQ6SCK4BDN0W96E65E2A39052056" - } - } - } - } - } - }, - "/risk/v1/authentication-results": { - "post": { - "summary": "Validate Authentication Results", - "description": "This call retrieves and validates the authentication results from issuer and allows the merchant to proceed with processing the payment.\n", - "tags": [ - "Payer Authentication" - ], - "operationId": "validateAuthenticationResults", - "x-devcenter-metaData": { - "categoryTag": "Payer_Authentication" - }, - "parameters": [ - { - "name": "validateRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "visaCheckoutId": { - "type": "string", - "maxLength": 48, - "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains `currency` and `totalAmount` for this order.", - "properties": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "required": [ - "unitPrice" - ], - "properties": { - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - } - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "bin": { - "type": "string", - "maxLength": 6, - "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - } - } - }, - "tokenizedCard": { - "type": "object", - "properties": { - "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s payment network token value.\n" - } - } - }, - "fluidData": { - "type": "object", - "properties": { - "value": { - "type": "string", - "maxLength": 3072, - "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" - }, - "keySerialNumber": { - "type": "string", - "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" - }, - "descriptor": { - "type": "string", - "maxLength": 128, - "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" - }, - "encoding": { - "type": "string", - "maxLength": 6, - "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" - }, - "authenticationTransactionContext": { - "type": "string", - "maxLength": 256, - "description": "Authentication transaction context is used as a unique identifier to link enroll and validate call.\n" - }, - "otpToken": { - "type": "string", - "maxLength": 255, - "description": "OTP entered by the card holder.\n" - }, - "authenticationType": { - "type": "string", - "maxLength": 2, - "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" - }, - "effectiveAuthenticationType": { - "type": "string", - "maxLength": 2, - "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" - }, - "responseAccessToken": { - "type": "string", - "description": "JWT returned by the 3D Secure provider when the authentication is complete. Required for Hybrid integration if you use the Cybersource-generated access token. Note: Max. length of this field is 2048 characters.\n" - }, - "signedParesStatusReason": { - "type": "string", - "maxLength": 2, - "description": "Provides additional information as to why the PAResStatus has a specific value.\n" - }, - "signedPares": { - "type": "string", - "description": "Payer authentication result (PARes) message returned by the card-issuing bank.\nIf you need to show proof of enrollment checking, you may need to\ndecrypt and parse the string for the information required by the payment card company.\nFor more information, see \"Storing Payer Authentication Data,\" page 160.\nImportant The value is in base64. You must remove all carriage returns and line feeds before\nadding the PARes to the request.\n" - }, - "whiteListStatus": { - "type": "string", - "maxLength": 1, - "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1AuthenticationResultsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "submitTimeLocal": { - "type": "string", - "description": "Time that the transaction was submitted in local time. Generated by Cybersource." - }, - "status": { - "type": "string", - "description": "The status for payerAuthentication 201 enroll and validate calls. Possible values are:\n- `AUTHENTICATION_SUCCESSFUL`\n- `PENDING_AUTHENTICATION`\n- `INVALID_REQUEST`\n- `AUTHENTICATION_FAILED`\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value is:\n- The cardholder is enrolled in Payer Authentication. Please authenticate\nthe cardholder before continuing with the transaction.\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "acsRenderingType": { - "type": "string", - "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" - }, - "acsTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" - }, - "authenticationResult": { - "type": "string", - "description": "Raw authentication data that comes from the cardissuing bank. Primary authentication field that\nindicates if authentication was successful and if liability shift occurred. You should examine first the\nresult of this field. This field contains one of these values:\n- `-1`: Invalid PARes.\n- `0`: Successful validation.\n- `1`: Cardholder is not participating, but the attempt to authenticate was recorded.\n- `6`: Issuer unable to perform authentication.\n- `9`: Cardholder did not complete authentication.\n" - }, - "authenticationStatusMsg": { - "type": "string", - "description": "Message that explains the authenticationResult reply field.\n" - }, - "authenticationTransactionId": { - "type": "string", - "maxLength": 26, - "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" - }, - "authenticationTransactionContextId": { - "type": "string", - "maxLength": 30, - "description": "Payer authentication transaction identifier passed to link the validation and authorization calls.\n" - }, - "transactionToken": { - "type": "string", - "maxLength": 256, - "description": "Web based token used to authenticate consumer with Rupay authentication provider.\n" - }, - "authorizationPayload": { - "type": "string", - "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" - }, - "cavv": { - "type": "string", - "maxLength": 255, - "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" - }, - "cavvAlgorithm": { - "type": "string", - "maxLength": 1, - "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" - }, - "directoryServerErrorCode": { - "type": "string", - "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" - }, - "directoryServerErrorDescription": { - "type": "string", - "maxLength": 4096, - "description": "Directory server text and additional detail about the error for this transaction.\n" - }, - "indicator": { - "type": "string", - "description": "Indicator used to differentiate Internet transactions from other types. The authentication failed if this field\nis not returned. For Visa, if your payment processor is Streamline, Barclays, AIBMS, or FDC Germany,\nyou receive the value vbv_failure instead of internet when eci is 07.\nThe value of this field is passed automatically to the authorization service if you request the services\ntogether. This field contains one of these values:\n- `aesk`: American Express SafeKey authentication verified successfully.\n- `aesk_attempted`: Card not enrolled in American Express SafeKey, but the attempt to authenticate was recorded.\n- `dipb`: Discover ProtectBuy authentication verified successfully.\n- `dipb_attempted`: Card not enrolled in Discover ProtectBuy, but the attempt to authenticate was recorded.\n- `internet`: Authentication was not verified successfully.\n- `js`: J/Secure authentication verified successfully.\n- `js_attempted`: Card not enrolled in J/Secure, but the attempt to authenticate was recorded.\n- `moto`: Mail or telephone order.\n- `pb_attempted`: Card not enrolled in Diners Club ProtectBuy, but the attempt to authenticate was recorded.\n- `recurring`: Recurring transaction.\n- `spa`: Mastercard Identity Check authentication verified successfully.\n- `spa_failure`: Mastercard Identity Check failed authentication.\n- `vbv`: Visa Secure authentication verified successfully.\n- `vbv_attempted`: Card not enrolled in Visa Secure, but the attempt to authenticate was recorded.\n- `vbv_failure`: Visa Secure authentication unavailable.\n" - }, - "interactionCounter": { - "type": "string", - "maxLength": 2, - "description": "Indicates the number of authentication cycles attempted by the cardholder and is tracked by the Issuing Banks ACS.Example: if customer gets the challenge window and enter in their one time password and hit submit then that interaction counter should just be 1.\nWhen customer gets the challenge window and the bank asks if they want to have the one time password sent to their phone or their email and they have to choose before going to the next screen to enter in their one time password then this interaction count would be 2.\nOne for the selection of how they want the one time password delivered and another with them actually entering in the one time password and hitting the submit button.\n" - }, - "eci": { - "type": "string", - "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" - }, - "eciRaw": { - "type": "string", - "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" - }, - "paresStatus": { - "type": "string", - "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" - }, - "sdkTransactionId": { - "type": "string", - "maxLength": 36, - "description": "SDK unique transaction identifier that is generated on each new transaction.\n" - }, - "specificationVersion": { - "type": "string", - "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" - }, - "threeDSServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" - }, - "ucafAuthenticationData": { - "type": "string", - "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" - }, - "ucafCollectionIndicator": { - "type": "string", - "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" - }, - "whiteListStatus": { - "type": "string", - "maxLength": 1, - "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" - }, - "whiteListStatusSource": { - "type": "string", - "maxLength": 2, - "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" - }, - "xid": { - "type": "string", - "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" - }, - "directoryServerTransactionId": { - "type": "string", - "maxLength": 36, - "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status. Possible values are:\n- `INVALID_MERCHANT_CONFIGURATION`\n- `CONSUMER_AUTHENTICATION_REQUIRED`\n- `CONSUMER_AUTHENTICATION_FAILED`\n- `AUTHENTICATION_FAILED`\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" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "riskV1AuthenticationResultsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status for payerAuthentication 201 enroll and validate calls. Value is:\n- `INVALID_REQUEST`\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible Values:\n- `MISSING_FIELD`\n- `INVALID_DATA`\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value is:\n- Encountered a Payer Authentication problem. Payer could not be authenticated.\n" - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "riskV1AuthenticationResultsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Validate authentication results", - "value": { - "clientReferenceInformation": { - "code": "pavalidatecheck", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "orderInformation": { - "amountDetails": { - "currency": "USD", - "totalAmount": "200.00" - }, - "lineItems": [ - { - "unitPrice": "10", - "quantity": "2", - "taxAmount": "32.40", - "passenger": { - "firstName": "John", - "lastName": "Doe" - } - } - ] - }, - "paymentInformation": { - "card": { - "type": "002", - "expirationMonth": "12", - "expirationYear": "2025", - "number": "5200000000000007" - } - }, - "consumerAuthenticationInformation": { - "authenticationTransactionId": "PYffv9G3sa1e0CQr5fV0" - } - } - } - } - } - }, - "/risk/v1/lists/{type}/entries": { - "post": { - "summary": "List Management", - "description": "This call adds/deletes/converts the request information in the negative list.\n\nProvide the list to be updated as the path parameter. This value can be 'postiive', 'negative' or 'review'.\n", - "operationId": "addNegative", - "tags": [ - "Decision Manager" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "x-devcenter-metaData": { - "categoryTag": "Risk_Management" - }, - "parameters": [ - { - "name": "type", - "in": "path", - "required": true, - "type": "string", - "description": "The list to be updated. It can be 'positive', 'negative' or 'review'." - }, - { - "name": "addNegativeListRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "orderInformation": { - "type": "object", - "properties": { - "address": { - "type": "object", - "description": "Contains address information related to the order", - "properties": { - "address1": { - "type": "string", - "description": "First line of the street address", - "maxLength": 60 - }, - "address2": { - "type": "string", - "description": "Second line of the street address", - "maxLength": 60 - }, - "locality": { - "type": "string", - "description": "City of the street address.\nRequired when adding the address to a list.\n", - "maxLength": 50 - }, - "country": { - "type": "string", - "description": "Country of the street address. Use the two-character codes located in the Support Center.\nRequired if address1 is present.\n", - "maxLength": 2 - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State, province, or territory of the street address. Use the two-character codes located in the Support Center." - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code of the street address. Required when adding the address to a list." - } - } - }, - "billTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "emailDomain": { - "type": "string", - "maxLength": 100, - "description": "Email domain of the customer. The domain of the email address comprises all characters that follow the @ symbol, such as mail.example.com. For the Risk Update service, if the email address and the domain are sent in the request, the domain supersedes the email address.\n" - } - } - }, - "shipTo": { - "type": "object", - "description": "Contains recipient shipping information.", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "description": "This array contains detailed information about individual products in the order.", - "items": { - "type": "object", - "properties": { - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "description": "Contains the payment data for updating in List Management.", - "properties": { - "card": { - "type": "object", - "properties": { - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "bin": { - "type": "string", - "maxLength": 6, - "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" - } - } - }, - "bank": { - "type": "object", - "description": "Customer's bank account details", - "properties": { - "accountNumber": { - "type": "string", - "description": "Customer's bank account number. You can use this field only when scoring a direct debit transaction. Use this field if you do not or are not allowed to provide the IBAN. Note Do not use the IBAN in this field. Use nly the\ntraditional account number information. For the IBAN, use bank_iban.\n", - "maxLength": 30 - }, - "code": { - "type": "string", - "description": "Country-specific code used to identify the customer\u2019s bank. Required for some countries if you do not or are not allowed to provide the IBAN instead. You can use this field only when scoring a direct debit transaction. For specific requirements, see \"Required Bank Account Information by Country,\"\n", - "maxLength": 15 - }, - "country": { - "type": "string", - "description": "Country where the bank is located. Use the two-character ISO codes. You can use this field only when scoring a direct debit transaction.\n", - "maxLength": 2 - }, - "iban": { - "type": "string", - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\nFor specific requirements, see \"Required Bank Account Information by Country,\"\n", - "maxLength": 30 - } - } - } - } - }, - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "networkIpAddress": { - "type": "string", - "maxLength": 11, - "description": "Network IP address of the customer (for example, 10.1.27). A network IP address includes up to 256 IP addresses.\n" - } - } - }, - "riskInformation": { - "type": "object", - "properties": { - "markingDetails": { - "type": "object", - "description": "Details for marking the transaction as either positive or negative.", - "properties": { - "notes": { - "type": "string", - "description": "Notes or details that explain the reasons for adding the transaction to either the positive or negative list.", - "maxLength": 120 - }, - "reason": { - "type": "string", - "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- `fraud_chargeback:` You have received a fraud-related chargeback for the transaction.\n- `non_fraud_chargeback:` You have received a non-fraudulent chargeback for the transaction.\n- `suspected:` You believe that you will probably receive a chargeback for the transaction.\n- `creditback:` You issued a refund to the customer to avoid a chargeback for the transaction.\n", - "maxLength": 25 - }, - "recordName": { - "type": "string", - "description": "Name of the customer\u2019s record entered in the list.\nFor the positive list, it is required if `action_\ncode`=`add_positive`. If absent from the request, `ics_risk_update` creates the value for this field by concatenating the customer\u2019s first and last names.\nFor the negative and the review lists, `record_name`, `customer_firstname`, and `customer_lastname` are optional.\n", - "maxLength": 255 - }, - "action": { - "type": "string", - "description": "Indicates whether to add to or remove a customer\u2019s identity from the negative or positive list. This field can\ncontain one of the following values:\n- add: Add information to the list.\n- convert: moves the data.\n- delete: deletes the data from the list.\n" - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "description": "Contains information about the buyer.", - "properties": { - "personalIdentification": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" - }, - "issuedBy": { - "type": "string", - "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "verificationResults": { - "type": "string", - "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" - } - } - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1UpdatePost201Response", - "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." - } - } - } - } - }, - "clientReferenceInformaton": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "status": { - "type": "string", - "description": "The status for risk update 201 calls. Possible values are:\n- INVALID_REQUEST\n- COMPLETED\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "riskV1DecisionsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "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" - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Add Data to a List", - "value": { - "orderInformation": { - "address": { - "address1": "1234 Sample St.", - "address2": "Mountain View", - "locality": "California", - "country": "US", - "administrativeArea": "CA", - "postalCode": "94043" - }, - "billTo": { - "email": "test@example.com", - "firstName": "John", - "lastName": "Doe" - } - }, - "paymentInformation": { - "number": "4111111111111111" - }, - "clientReferenceInformation": { - "code": "54323007", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "riskInformation": { - "markingDetails": { - "action": "add" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "id": "5526663169230178269497", - "status": "COMPLETED", - "submitTimeUTC": "2020-01-20T09:23:15Z" - } - }, - "example1": { - "summary": "Add Duplicate Information", - "value": { - "orderInformation": { - "address": { - "address1": "1234 Sample St.", - "address2": "Mountain View", - "locality": "California", - "country": "US", - "administrativeArea": "CA", - "postalCode": "94043" - }, - "billTo": { - "email": "nobody@example.com", - "firstName": "John", - "lastName": "Doe" - } - }, - "paymentInformation": { - "number": "4111111111111111" - }, - "clientReferenceInformation": { - "code": "54323007" - }, - "riskInformation": { - "markingDetails": { - "action": "add" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "54323007" - }, - "id": "5526663169230178269497", - "status": "COMPLETED", - "submitTimeUTC": "2020-01-20T09:23:15Z" - } - } - } - } - }, - "/risk/v1/decisions/{id}/marking": { - "post": { - "summary": "Fraud Marking", - "description": "This can be used to -\n1. Add known fraudulent data to the fraud history\n2. Remove data added to history with Transaction Marking Tool or by uploading chargeback files\n3. Remove chargeback data from history that was automatically added.\nFor detailed information, contact your Cybersource representative\n\nPlace the request ID of the transaction you want to mark as suspect (or remove from history) as the path parameter in this request.\n", - "operationId": "fraudUpdate", - "tags": [ - "Decision Manager" - ], - "x-devcenter-metaData": { - "categoryTag": "Risk_Management" - }, - "parameters": [ - { - "name": "id", - "in": "path", - "required": true, - "type": "string", - "description": "Request ID of the transaction that you want to mark as suspect or remove from history." - }, - { - "name": "fraudMarkingActionRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "required": [ - "riskInformation" - ], - "properties": { - "riskInformation": { - "type": "object", - "properties": { - "markingDetails": { - "type": "object", - "description": "Details for marking the transaction.", - "properties": { - "notes": { - "type": "string", - "description": "Notes or details that explain the reasons for marking the transaction as suspect or otherwise.", - "maxLength": 120 - }, - "reason": { - "type": "string", - "description": "Reason for marking the transaction as suspect or otherwise. This field can contain one of the following values:\n- `fraud_chargeback:` You have received a fraud-related chargeback for the transaction.\n- `non_fraud_chargeback:` You have received a non-fraudulent chargeback for the transaction.\n- `suspected:` You believe that you will probably receive a chargeback for the transaction.\n- `creditback:` You issued a refund to the customer to avoid a chargeback for the transaction.\n", - "maxLength": 25 - }, - "fieldsIncluded": { - "type": "array", - "description": "This field can contain one or more of the following values. When you specify more than one value, separate them with commas (,).\n- `account_key_hash`\n- `customer_account_id`\n- `customer_email`\n- `customer_ipaddress`\n- `customer_phone`\n- `device_fingerprint`\n- `ship_address`\nIf no value is specified, `account_key_hash`, `customer_email`, and `ship_address` are used by default.\nNote `account_key_hash` adds the field that contains the card number (`customer_cc_number`).\n", - "items": { - "type": "string" - } - }, - "action": { - "type": "string", - "description": "This field can contain one of the following values:\n- add: Mark as Suspect.\n- clear: Clear Mark as Suspect.\n- hide: Remove from history.\n" - } - } - } - } - }, - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1UpdatePost201Response", - "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." - } - } - } - } - }, - "clientReferenceInformaton": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "status": { - "type": "string", - "description": "The status for risk update 201 calls. Possible values are:\n- INVALID_REQUEST\n- COMPLETED\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "riskV1DecisionsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "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" - } - } - } - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Mark as Suspect", - "value": { - "riskInformation": { - "markingDetails": { - "notes": "Adding this transaction as suspect", - "action": "add", - "reason": "suspected", - "fieldsIncluded": [ - "customer_email", - "customer_phone" - ] - } - }, - "clientReferenceInformation": { - "code": 12345, - "partner": { - "developerId": 1234, - "solutionId": 3321 - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": 12345, - "partner": { - "developerId": 1234, - "solutionId": 3321 - } - }, - "id": 2.719725130000168e+21, - "status": "COMPLETED", - "submitTimeUTC": "2020-01-20T09:23:15.000Z" - } - }, - "example1": { - "summary": "Remove from History", - "value": { - "riskInformation": { - "markingDetails": { - "notes": "Adding this transaction as suspect", - "action": "hide", - "reason": "suspected" - } - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": 12345 - }, - "id": 2.719725130000168e+21, - "status": "COMPLETED", - "submitTimeUTC": "2020-01-20T09:23:15.000Z" - } - } - } - } - }, - "/risk/v1/address-verifications": { - "post": { - "summary": "Verify customer address", - "description": "This call verifies that the customer address submitted is valid.", - "operationId": "verifyCustomerAddress", - "tags": [ - "Verification" - ], - "x-devcenter-metaData": { - "categoryTag": "Risk_Management" - }, - "parameters": [ - { - "name": "verifyCustomerAddressRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "billTo": { - "type": "object", - "required": [ - "address1", - "locality", - "country", - "postalCode" - ], - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "address3": { - "type": "string", - "maxLength": 60, - "description": "Additional address information (third line of the billing address)\n" - }, - "address4": { - "type": "string", - "maxLength": 60, - "description": "Additional address information (fourth line of the billing address)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - } - } - }, - "shipTo": { - "type": "object", - "required": [ - "address1", - "country" - ], - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address3": { - "type": "string", - "maxLength": 60, - "description": "Third line of the shipping address.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address4": { - "type": "string", - "maxLength": 60, - "description": "Fourth line of the shipping address." - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "required": [ - "unitPrice" - ], - "properties": { - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSKU": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productRisk": { - "type": "string", - "maxLength": 6, - "description": "Indicates the level of risk for the product. This field can contain one of the following values:\n- `low`: The product is associated with few chargebacks.\n- `normal`: The product is associated with a normal number of chargebacks.\n- `high`: The product is associated with many chargebacks.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - } - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Optional customer\u2019s account ID, tracking number, reward number, or other unique number\nthat you assign to the customer for the purpose that you choose\n" - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1AddressVerificationsPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "submitTimeLocal": { - "type": "string", - "description": "Time that the transaction was submitted in local time. Generated by Cybersource." - }, - "status": { - "type": "string", - "description": "The status for the call can be:\n- COMPLETED\n- INVALID_REQUEST\n- DECLINED\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value can be\n - Apartment number missing or not found.\n - Insufficient address information.\n - House/Box number not found on street.\n - Multiple address matches were found.\n - P.O. Box identifier not found or out of range.\n - Route service identifier not found or out of range.\n - Street name not found in Postal code.\n - Postal code not found in database.\n - Unable to verify or correct address.\n - Multiple addres matches were found (international)\n - Address match not found (no reason given)\n - Unsupported character set\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "addressVerificationInformation": { - "type": "object", - "properties": { - "addressType": { - "type": "string", - "maxLength": 255, - "description": "Contains the record type of the postal code with which the address was matched.\n\n#### U.S. Addresses\nDepending on the quantity and quality of the address information provided,\nthis field contains one or two characters:\n\n- One character: sufficient correct information was provided to result in accurate matching.\n- Two characters: standardization would provide a better address if more or better\ninput address information were available. The second character is D (default).\n\nBlank fields are unassigned. When an address cannot be standardized, how the input\ndata was parsed determines the address type. In this case, standardization may indicate a street, rural route,\nhighway contract, general delivery, or PO box. For possible values, see the description for the `dav_address_type` reply field in [CyberSource Verification Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/)\n\n#### All Other Countries\nThis field contains one of the following values:\n- P: Post.\n- S: Street.\n- x: Unknown.\n" - }, - "barCode": { - "type": "object", - "properties": { - "value": { - "type": "string", - "maxLength": 255, - "description": "Delivery point bar code determined from the input address." - }, - "checkDigit": { - "type": "number", - "maxLength": 1, - "description": "Check digit for the 11-digit delivery point bar code." - } - } - }, - "applicableRegion": { - "type": "string", - "maxLength": 255, - "description": "Value can be\n- Canada\n- US\n- International\nThe values of errorCode and statusCode mean different things depending on the applicable region.\nRefer to the guide for more info.\n" - }, - "errorCode": { - "type": "string", - "maxLength": 255, - "description": "Four-character error code returned for Canadian, US and international addresses.\nFor possible values, see Verification Services guide.\nThe meaning of the errorCode depends on value of applicableRegion.\n" - }, - "statusCode": { - "type": "string", - "maxLength": 255, - "description": "Four-to-ten character status code returned for Canadian, US and international addresses.\nFor possible values, see Verification Services guide.\nThe meaning of the errorCode depends on value of applicableRegion.\n" - }, - "careOf": { - "type": "string", - "maxLength": 255, - "description": "Care of data dropped from the standard address." - }, - "matchScore": { - "type": "integer", - "maxLength": 1, - "description": "Indicates the probable correctness of the address match. Returned for U.S. and Canadian addresses.\nReturns a value from 0-9, where 0 is most likely to be correct and 9 is least\nlikely to be correct, or -1 if there is no address match.\n" - }, - "standardAddress": { - "type": "object", - "properties": { - "address1": { - "type": "object", - "properties": { - "withApartment": { - "type": "string", - "maxLength": 255, - "description": "First line of the standardized address, including apartment information." - }, - "withoutApartment": { - "type": "string", - "maxLength": 255, - "description": "First line of the standardized address, without apartment information.\nReturned for U.S. and Canadian addresses.\n" - } - } - }, - "address2": { - "type": "string", - "maxLength": 255, - "description": "Second line of the standardized address." - }, - "address3": { - "type": "string", - "maxLength": 255, - "description": "Third line of the standardized address." - }, - "address4": { - "type": "string", - "maxLength": 255, - "description": "Fourth line of the standardized address." - }, - "locality": { - "type": "string", - "maxLength": 255, - "description": "Standardized city name." - }, - "county": { - "type": "string", - "maxLength": 255, - "description": "U.S. county if available." - }, - "country": { - "type": "string", - "maxLength": 255, - "description": "Standardized country name." - }, - "csz": { - "type": "string", - "maxLength": 255, - "description": "Standardized city, state or province, and ZIP +4 code or postal code line." - }, - "isoCountry": { - "type": "string", - "maxLength": 255, - "description": "Standardized two-character ISO country code." - }, - "administrativeArea": { - "type": "string", - "maxLength": 255, - "description": "U.S.P.S. standardized state or province abbreviation." - }, - "postalCode": { - "type": "string", - "maxLength": 255, - "description": "Standardized U.S. ZIP + 4 postal code." - } - } - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status. Value can be\n - `APARTMENT_NUMBER_NOT_FOUND`\n - `INSUFFICIENT_ADDRESS_INFORMATION`\n - `HOUSE_OR_BOX_NUMBER_NOT_FOUND`\n - `MULTIPLE_ADDRESS_MATCHES`\n - `BOX_NUMBER_NOT_FOUND`\n - `ROUTE_SERVICE_NOT_FOUND`\n - `STREET_NAME_NOT_FOUND`\n - `POSTAL_CODE_NOT_FOUND`\n - `UNVERIFIABLE_ADDRESS`\n - `MULTIPLE_ADDRESS_MATCHES_INTERNATIONAL`\n - `ADDRESS_MATCH_NOT_FOUND`\n - `UNSUPPORTED_CHARACTER_SET`\n - `INVALID_MERCHANT_CONFIGURATION`\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" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "riskV1AddressVerificationsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "riskV1AddressVerificationsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Verbose Request with all fields", - "value": { - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-All fields", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "orderInformation": { - "billTo": { - "address1": "12301 research st", - "address2": "1", - "address3": "2", - "address4": "3", - "locality": "Austin", - "country": "US", - "administrativeArea": "TX", - "postalCode": "78759" - }, - "shipTo": { - "address1": "1715 oaks apt # 7", - "address2": " ", - "address3": "", - "address4": "", - "locality": "SUPERIOR", - "country": "US", - "administrativeArea": "WI", - "postalCode": "29681" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "9966223", - "productCode": "electronic", - "productName": "headset", - "quantity": "3", - "passenger": { - "firstname": "ABCD", - "lastname": "DEF" - } - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "ABCD" - } - }, - "responseValue": { - "addressVerificationInformation": { - "matchScore": "0", - "standardAddress": { - "country": "US", - "address1": { - "withoutApartment": "1715 Oakes Ave", - "withApartment": "1715 Oakes Ave Apt 7" - }, - "postalCode": "54880-2466", - "county": "Douglas", - "locality": "Superior", - "csz": "Superior WI 54880-2466", - "administrativeArea": "WI", - "isoCountry": "US" - }, - "addressType": "H", - "barCode": { - "checkDigit": "0", - "value": "246607" - }, - "statusCode": "S99000" - }, - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-All fields", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "id": "5574744400096019003092", - "status": "COMPLETED", - "submitTimeUtc": "2019-05-10T07:47:20Z" - } - }, - "example1": { - "summary": "Shipping Details not US or Canada", - "value": { - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-All fields" - }, - "orderInformation": { - "billTo": { - "address1": "12301 research st", - "address2": "1", - "address3": "2", - "address4": "3", - "locality": "Austin", - "country": "US", - "administrativeArea": "TX", - "postalCode": "78759" - }, - "shipTo": { - "address1": "4R.ILHA TERCEIRA,232-R/C-ESQ", - "address2": " ", - "address3": "", - "address4": "", - "locality": "Carcavelos", - "country": "PT", - "administrativeArea": "WI", - "postalCode": "29681" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "9966223", - "productCode": "electronic", - "productName": "headset", - "quantity": "3", - "passenger": { - "firstname": "ABCD", - "lastname": "DEF" - } - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "ABCD" - } - }, - "responseValue": { - "addressVerificationInformation": { - "matchScore": "6", - "standardAddress": { - "country": "Portugal", - "address2": "C Esq - R", - "address1": { - "withApartment": "R Ilha Terceira 232 - C Esq - R" - }, - "postalCode": "2775-796", - "locality": "Carcavelos", - "administrativeArea": "Lisboa", - "isoCountry": "PT" - }, - "addressType": "S", - "statusCode": "SE600" - }, - "clientReferenceInformation": { - "code": "addressEg" - }, - "id": "5574744458726021803092", - "status": "COMPLETED", - "submitTimeUtc": "2019-05-10T07:47:26Z" - } - }, - "example2": { - "summary": "Canadian Billing Details", - "value": { - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-All fields" - }, - "orderInformation": { - "billTo": { - "address1": "1650 Burton Ave", - "address2": "", - "address3": "", - "address4": "", - "locality": "VICTORIA", - "country": "CA", - "administrativeArea": "BC", - "postalCode": "V8T 2N6" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "9966223", - "productCode": "electronic", - "productName": "headset", - "quantity": "3", - "passenger": { - "firstname": "ABCD", - "lastname": "DEF" - } - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "ABCD" - } - }, - "responseValue": { - "addressVerificationInformation": { - "matchScore": "0", - "standardAddress": { - "country": "CA", - "address1": { - "withoutApartment": "1650 Burton Ave", - "withApartment": "1650 Burton Ave" - }, - "postalCode": "V8T2N6", - "locality": "Victoria", - "csz": "Victoria BC V8T 2N6", - "administrativeArea": "BC", - "isoCountry": "CA" - }, - "addressType": "S", - "statusCode": "S0000" - }, - "clientReferenceInformation": { - "code": "addressEg" - }, - "id": "5574744407796019403092", - "status": "COMPLETED", - "submitTimeUtc": "2019-05-10T07:47:20Z" - } - }, - "example3": { - "summary": "Multiple Line Items", - "value": { - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-All fields" - }, - "orderInformation": { - "billTo": { - "address1": "12301 research st", - "address2": "1", - "address3": "2", - "address4": "3", - "locality": "Austin", - "country": "US", - "administrativeArea": "TX", - "postalCode": "78759" - }, - "shipTo": { - "address1": "PO Box 9088", - "address2": "", - "address3": "", - "address4": "", - "locality": "San Jose", - "country": "US", - "administrativeArea": "CA", - "postalCode": "95132" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "9966223", - "productCode": "electronix", - "productName": "headset", - "quantity": "3" - }, - { - "unitPrice": "10.50", - "productSKU": "9966226", - "productCode": "electronic", - "productName": "wwrdf", - "quantity": "2" - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "QWERTY" - } - }, - "responseValue": { - "addressVerificationInformation": { - "matchScore": "0", - "standardAddress": { - "country": "US", - "address1": { - "withoutApartment": "PO Box 9088", - "withApartment": "PO Box 9088" - }, - "postalCode": "95157-0088", - "county": "Santa Clara", - "locality": "San Jose", - "csz": "San Jose CA 95157-0088", - "administrativeArea": "CA", - "isoCountry": "US" - }, - "addressType": "P", - "barCode": { - "checkDigit": "1", - "value": "008888" - }, - "statusCode": "S90000" - }, - "clientReferenceInformation": { - "code": "addressEg" - }, - "id": "5574744469676022203092", - "status": "COMPLETED", - "submitTimeUtc": "2019-05-10T07:47:27Z" - } - }, - "example4": { - "summary": "Apartment Number Missing or Not Found", - "value": { - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-error response check" - }, - "orderInformation": { - "billTo": { - "address1": "6th 4th ave", - "address2": "", - "locality": "rensslaer", - "country": "US", - "administrativeArea": "NY", - "postalCode": "12144" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "996633", - "productCode": "handling", - "productName": "qwerty", - "quantity": "3" - } - ] - } - }, - "responseValue": { - "addressVerificationInformation": { - "errorCode": "E420", - "statusCode": "S20000" - }, - "clientReferenceInformation": { - "code": "addressEg" - }, - "errorInformation": { - "reason": "APARTMENT_NUMBER_NOT_FOUND", - "message": "Apartment number missing or not found." - }, - "id": "5574744502546023003092", - "status": "DECLINED", - "submitTimeUtc": "2019-05-10T07:47:30Z" - } - }, - "example5": { - "summary": "Address Match Not Found", - "value": { - "clientReferenceInformation": { - "code": "addressEg", - "comments": "dav-error response check" - }, - "orderInformation": { - "billTo": { - "address1": "Apt C ", - "address2": "", - "locality": "Glendale", - "country": "US", - "administrativeArea": "CA", - "postalCode": "91204" - } - } - }, - "responseValue": { - "addressVerificationInformation": { - "errorCode": "E302", - "statusCode": "S00000" - }, - "clientReferenceInformation": { - "code": "addressEg" - }, - "errorInformation": { - "reason": "ADDRESS_MATCH_NOT_FOUND", - "message": "Address match not found." - }, - "id": "5574744508936023403092", - "status": "DECLINED", - "submitTimeUtc": "2019-05-10T07:47:31Z" - } - } - } - } - }, - "/risk/v1/export-compliance-inquiries": { - "post": { - "summary": "Validate export compliance", - "description": "This call checks customer data against specified watch lists to ensure export compliance.\n", - "operationId": "validateExportCompliance", - "tags": [ - "Verification" - ], - "x-devcenter-metaData": { - "categoryTag": "Risk_Management" - }, - "parameters": [ - { - "name": "validateExportComplianceRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "required": [ - "code" - ], - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "billTo": { - "type": "object", - "required": [ - "address1", - "locality", - "country", - "postalCode", - "email" - ], - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "address3": { - "type": "string", - "maxLength": 60, - "description": "Additional address information (third line of the billing address)\n" - }, - "address4": { - "type": "string", - "maxLength": 60, - "description": "Additional address information (fourth line of the billing address)\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "company": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 60, - "description": "Company name of person buying the product.\nImportant: This field or billTo.firstName and billTo.lastName must be present. Else, your request will fail.\n" - } - } - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "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)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "required": [ - "unitPrice" - ], - "properties": { - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "allowedExportCountries": { - "type": "array", - "items": { - "type": "string", - "description": "Comma-separated list of ISO country codes for countries to which the product can be exported.\n\nFor all possible values, see the \"Country and Territory Postal System Categories\" section in the [CyberSource Verification Services Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/)\n\nIf country codes are not specified, or if this field is not included, the U.S. government\u2019s country\ncode list is used.\n\n**Note** The default list of countries restricted by the U.S. always applies. Any country not\nspecifically added to the export field is considered restricted.\n" - } - }, - "restrictedExportCountries": { - "type": "array", - "items": { - "type": "string", - "description": "Comma-separated list of ISO country codes for countries to which the product cannot be exported.\n\nFor all possible values, see the \"Country and Territory Postal System Categories\" section in the [CyberSource Verification Services Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/)\n\n**Note** If the export field is also present, the content of the `restrictedExportCountries`\nfield overrides the content of export.\n" - } - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productSKU": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productRisk": { - "type": "string", - "maxLength": 6, - "description": "Indicates the level of risk for the product. This field can contain one of the following values:\n- `low`: The product is associated with few chargebacks.\n- `normal`: The product is associated with a normal number of chargebacks.\n- `high`: The product is associated with many chargebacks.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - } - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Optional customer\u2019s account ID, tracking number, reward number, or other unique number\nthat you assign to the customer for the purpose that you choose\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - } - } - }, - "exportComplianceInformation": { - "type": "object", - "properties": { - "addressOperator": { - "type": "string", - "description": "Parts of the customer\u2019s information that must match with an entry in the DPL (denied parties list)\nbefore a match occurs. This field can contain one of the following values:\n- AND: (default) The customer\u2019s name or company and the customer\u2019s address must appear in the database.\n- OR: The customer\u2019s name must appear in the database.\n- IGNORE: You want the service to detect a match only of the customer\u2019s name or company but not of the address.\n" - }, - "weights": { - "type": "object", - "properties": { - "address": { - "type": "string", - "maxLength": 6, - "description": "Degree of correlation between a customer\u2019s address and an entry in the DPL\nbefore a match occurs. This field can contain one of the following values:\n- exact: The address must be identical to the entry in the DPL.\n- high: (default) The address cannot differ significantly from the entry in the DPL.\n- medium: The address can differ slightly more from the entry in the DPL.\n- low: The address can differ significantly from the entry in the DPL.\n" - }, - "company": { - "type": "string", - "maxLength": 6, - "description": "Degree of correlation between a company address and an entry in the DPL\nbefore a match occurs. This field can contain one of the following values:\n- exact: The company name must be identical to the entry in the DPL.\n- high: (default) The company name cannot differ significantly from the entry in the DPL.\n- medium: The company name can differ slightly more from the entry in the DPL.\n- low: The company name can differ significantly from the entry in the DPL.\n" - }, - "name": { - "type": "string", - "maxLength": 6, - "description": "Degree of correlation between a customer\u2019s name and an entry in the DPL\nbefore a match occurs. This field can contain one of the following values:\n- exact: The name must be identical to the entry in the DPL.\n- high: (default) The name cannot differ significantly from the entry in the DPL.\n- medium: The name can differ slightly more from the entry in the DPL.\n- low: The name can differ significantly the entry in the DPL.\n" - } - } - }, - "sanctionLists": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255 - }, - "description": "Use this field to specify which list(s) you want checked with the request.\nThe reply will include the list name as well as the response data.\nTo check against multiple lists, enter multiple list codes separated by a caret (^).\nFor more information, see \"Restricted and Denied Parties List,\" page 68.\n" - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response", - "schema": { - "title": "riskV1ExportComplianceInquiriesPost201Response", - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "submitTimeLocal": { - "type": "string", - "description": "Time that the transaction was submitted in local time. Generated by Cybersource." - }, - "status": { - "type": "string", - "description": "The status for the call can be:\n- COMPLETED\n- INVALID_REQUEST\n- DECLINED\n" - }, - "message": { - "type": "string", - "description": "The message describing the reason of the status. Value can be\n - The customer matched the Denied Parties List\n - The Export bill_country/ship_country match\n - Export email_country match\n - Export hostname_country/ip_country match\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "exportComplianceInformation": { - "type": "object", - "properties": { - "ipCountryConfidence": { - "type": "integer", - "minimum": -1, - "maximum": 100, - "description": "Likelihood that the country associated with the customer\u2019s IP address was identified correctly.\nReturns a value from 1\u2013100, where 100 indicates the highest likelihood.\nIf the country cannot be determined, the value is \u20131.\n" - }, - "infoCodes": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255 - }, - "description": "Returned when the Denied Parties List check (first two codes) or the export service (all others) would have\ndeclined the transaction. This field can contain one or more of these values:\n- `MATCH-DPC`: Denied Parties List match.\n- `UNV-DPC`: Denied Parties List unavailable.\n- `MATCH-BCO`: Billing country restricted.\n- `MATCH-EMCO`: Email country restricted.\n- `MATCH-HCO`: Host name country restricted.\n- `MATCH-IPCO`: IP country restricted.\n- `MATCH-SCO`: Shipping country restricted.\n" - }, - "watchList": { - "type": "object", - "properties": { - "matches": { - "type": "array", - "items": { - "type": "object", - "properties": { - "addresses": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255 - }, - "description": "Address found on the list specified in export_matchN_list\nfor the entity (name and address) in the request.\n" - }, - "sanctionList": { - "type": "string", - "maxLength": 255, - "description": "List on which the first Denied Parties List check match appears.\nFor a list of codes, see \"Denied Parties List Check Codes,\" page 56.\n" - }, - "aliases": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255 - }, - "description": "Name found on the list specified in export_matchN_list for the entity (name and address) in the request.\n" - }, - "programs": { - "type": "array", - "items": { - "type": "string", - "maxLength": 255 - }, - "description": "Sub-lists matched by the order data. List members are separated by carets (^)." - } - } - } - } - } - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status. Value can be\n - `CUSTOMER_WATCHLIST_MATCH`\n - `ADDRESS_COUNTRY_WATCHLIST_MATCH`\n - `EMAIL_COUNTRY_WATCHLIST_MATCH`\n - `IP_COUNTRY_WATCHLIST_MATCH`\n - `INVALID_MERCHANT_CONFIGURATION`\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" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "riskV1ExportComplianceInquiriesPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "riskV1ExportComplianceInquiriesPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Customer Match Denied Parties List", - "value": { - "clientReferenceInformation": { - "code": "verification example", - "comments": "Export-basic", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "orderInformation": { - "billTo": { - "address1": "901 Metro Centre Blvd", - "locality": "Foster City", - "country": "US", - "administrativeArea": "CA", - "postalCode": "94404", - "email": "test@domain.com", - "firstName": "ANDREE", - "lastName": "AGNESE", - "company": { - "name": "A & C International Trade, Inc" - } - }, - "shipTo": { - "address1": "114B", - "address2": "Grifendor House", - "locality": "Hogward University", - "country": "IN", - "firstName": "DumbelDore", - "lastName": "Albus" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "123456", - "productCode": "physical_software", - "productName": "Qwe", - "quantity": "3" - } - ] - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "verification example", - "comments": "Export-basic", - "partner": { - "developerId": "7891234", - "solutionId": "89012345" - } - }, - "errorInformation": { - "reason": "CUSTOMER_WATCHLIST_MATCH", - "message": "The customer matched the Denied Parties List" - }, - "exportComplianceInformation": { - "infoCodes": [ - "MATCH-DPC" - ] - }, - "id": "5585068111056392703092", - "status": "DECLINED", - "submitTimeUtc": "2019-05-22T06:33:31Z" - } - }, - "example1": { - "summary": "Export Compliance Information Provided", - "value": { - "clientReferenceInformation": { - "code": "verification example", - "comments": "Export -fields" - }, - "orderInformation": { - "billTo": { - "address1": "901 Metro Centre Blvd", - "locality": "Foster City", - "country": "US", - "administrativeArea": "CA", - "postalCode": "94404", - "email": "test@domain.com", - "firstName": "ANDREE", - "lastName": "AGNESE", - "company": { - "name": "A & C International Trade, Inc" - } - }, - "shipTo": { - "address1": "114B", - "address2": "Grifendor House", - "locality": "Hogward University", - "country": "IN", - "firstName": "DumbelDore", - "lastName": "Albus" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "123456", - "productCode": "physical_software", - "productName": "Qwe", - "quantity": "3" - } - ] - }, - "exportComplianceInformation": { - "addressOperator": "and", - "weights": { - "address": "low", - "company": "exact", - "name": "exact" - }, - "sanctionLists": [ - "Bureau Of Industry and Security" - ] - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "verification example" - }, - "errorInformation": { - "reason": "CUSTOMER_WATCHLIST_MATCH", - "message": "The customer matched the Denied Parties List" - }, - "exportComplianceInformation": { - "infoCodes": [ - "MATCH-DPC" - ] - }, - "id": "5585070617626392903092", - "status": "DECLINED", - "submitTimeUtc": "2019-05-22T06:37:42Z" - } - }, - "example2": { - "summary": "Compliance Status Completed", - "value": { - "clientReferenceInformation": { - "code": "verification example" - }, - "orderInformation": { - "billTo": { - "firstName": "Suman", - "lastName": "Kumar", - "address1": "901 Metro Centre Blvd", - "address2": "2", - "locality": "Foster City", - "country": "US", - "administrativeArea": "CA", - "postalCode": "94404", - "email": "donewithhorizon@test.com" - }, - "lineItems": [ - { - "unitPrice": "19.00" - } - ], - "shipTo": { - "address1": "26 JALAN MT. ERSKINE", - "address2": "Grifendor House", - "locality": "PENANG", - "country": "be", - "firstName": "DumbelDore", - "lastName": "Albus", - "phoneNumber": "54871425369", - "administrativeArea": "NH", - "postalCode": "2176001", - "method": "lowcost" - } - }, - "buyerInformation": { - "merchantCustomerId": "87789" - }, - "exportComplianceInformation": { - "addressOperator": "and", - "weights": { - "address": "abc", - "company": "def", - "name": "adb" - }, - "sanctionLists": [ - "abc", - "acc", - "bac" - ] - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "verification example" - }, - "exportComplianceInformation": { - "ipCountryConfidence": "-1" - }, - "id": "5585073068196393103092", - "status": "COMPLETED", - "submitTimeUtc": "2019-05-22T06:41:48Z" - } - }, - "example3": { - "summary": "Multiple Sanction Lists", - "value": { - "clientReferenceInformation": { - "code": "verification example", - "comments": "All fields" - }, - "orderInformation": { - "billTo": { - "address1": "901 Metro Centre Blvd", - "address2": " ", - "address3": "", - "address4": "Foster City", - "locality": "CA", - "country": "US", - "administrativeArea": "NH", - "postalCode": "03055", - "email": "test@domain.com", - "firstName": "Suman", - "lastName": "Kumar", - "company": { - "name": "A & C International Trade, Inc." - } - }, - "shipTo": { - "address1": "114B", - "address2": "Grifendor House", - "locality": "Hogward University", - "country": "IN", - "destinationCode": "ASD", - "firstName": "DumbelDore", - "lastName": "Albus" - }, - "lineItems": [ - { - "unitPrice": "120.50", - "productSKU": "610009", - "productCode": "physical_software", - "productName": "Xer", - "quantity": "3" - } - ] - }, - "exportComplianceInformation": { - "addressOperator": "and", - "weights": { - "address": "low", - "company": "exact", - "name": "exact" - }, - "sanctionLists": [ - "Bureau Of Industry and Security", - "DOS_DTC", - "AUSTRALIA" - ] - }, - "deviceInformation": { - "hostName": "www.cybersource.ir", - "ipAddress": "127.0.0.1" - }, - "buyerInformation": { - "merchantCustomerId": "Export1" - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "verification example" - }, - "errorInformation": { - "reason": "CUSTOMER_WATCHLIST_MATCH", - "message": "The customer matched the Denied Parties List" - }, - "exportComplianceInformation": { - "infoCodes": [ - "MATCH-DPC" - ] - }, - "id": "5574745444896030103092", - "status": "DECLINED", - "submitTimeUtc": "2019-05-10T07:49:06Z" - } - }, - "example4": { - "summary": "No Company Name", - "value": { - "clientReferenceInformation": { - "code": "verification example" - }, - "orderInformation": { - "billTo": { - "firstName": "Suman", - "lastName": "Kumar", - "address1": "901 Metro Centre Blvd", - "address2": "2", - "locality": "Foster City", - "country": "US", - "administrativeArea": "CA", - "postalCode": "94404", - "email": "donewithhorizon@test.com" - }, - "lineItems": [ - { - "unitPrice": "19.00" - } - ], - "shipTo": { - "address1": "26 JALAN MT. ERSKINE", - "address2": "Grifendor House", - "locality": "PENANG", - "country": "be", - "firstName": "DumbelDore", - "lastName": "Albus", - "phoneNumber": "54871425369", - "administrativeArea": "NH", - "postalCode": "2176001", - "method": "lowcost" - } - }, - "buyerInformation": { - "merchantCustomerId": "87789" - } - }, - "responseValue": { - "clientReferenceInformation": { - "code": "verification example" - }, - "exportComplianceInformation": { - "ipCountryConfidence": "-1" - }, - "id": "5585076921686393803092", - "status": "COMPLETED", - "submitTimeUtc": "2019-05-22T06:48:14Z" - } - } - } - } - }, - "/pts/v2/payouts": { - "post": { - "summary": "Process a Payout", - "description": "Send funds from a selected funding source to a designated credit/debit card account or a prepaid card using an Original Credit Transaction (OCT).\n", - "tags": [ - "Payouts" - ], - "operationId": "octCreatePayment", - "x-devcenter-metaData": { - "categoryTag": "Payouts" - }, - "parameters": [ - { - "name": "octCreatePaymentRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "surcharge": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 15, - "description": "The surcharge amount is included in the total transaction amount but is passed in a separate field to the issuer and acquirer for tracking. The issuer can provide information about the surcharge amount to the customer.\n\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n\n**NOTE**: This field is supported only for CyberSource through VisaNet (CtV) for Payouts. For CtV, the maximum string length is 8.\n\n#### PIN debit\nSurcharge amount that you are charging the customer for this transaction. If you include a surcharge amount\nin the request, you must also include the surcharge amount in the value for `orderInformation.amountDetails.totalAmount`.\n\nOptional field for transactions that use PIN debit credit or PIN debit purchase.\n" - } - } - } - } - }, - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneType": { - "type": "string", - "description": "Customer's phone number type.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nPossible Values:\n* day\n* home\n* night\n* work\n" - } - } - }, - "isCryptocurrencyPurchase": { - "type": "string", - "description": "#### Visa Platform Connect :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nAdditional values to add :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nvalid values are\n- Y/y, true\n- N/n, false\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "categoryCode": { - "type": "integer", - "maximum": 9999, - "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" - }, - "submitLocalDateTime": { - "type": "string", - "description": "Time that the transaction was submitted in local time. The time is in hhmmss format.\n" - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "administrativeArea": { - "type": "string", - "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 14, - "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - }, - "contact": { - "type": "string", - "maxLength": 14, - "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" - } - } - } - } - }, - "recipientInformation": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 35, - "description": "First name of recipient.\ncharacters.\n* CTV (14)\n* Paymentech (30)\n" - }, - "middleInitial": { - "type": "string", - "maxLength": 1, - "description": "Middle Initial of recipient. Required only for FDCCompass.\n" - }, - "middleName": { - "type": "string", - "maxLength": 35, - "description": "Recipient\u2019s middle name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n" - }, - "lastName": { - "type": "string", - "maxLength": 35, - "description": "Last name of recipient.\ncharacters.\n* CTV (14)\n* Paymentech (30)\n" - }, - "address1": { - "type": "string", - "maxLength": 50, - "description": "Recipient address information. Required only for FDCCompass." - }, - "locality": { - "type": "string", - "maxLength": 25, - "description": "Recipient city. Required only for FDCCompass." - }, - "administrativeArea": { - "type": "string", - "maxLength": 3, - "description": "Recipient State. Required only for FDCCompass." - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Recipient country code. Required only for FDCCompass." - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Recipient postal code. Required only for FDCCompass." - }, - "phoneNumber": { - "type": "string", - "maxLength": 20, - "description": "Recipient phone number. Required only for FDCCompass." - }, - "dateOfBirth": { - "type": "string", - "minLength": 8, - "maxLength": 8, - "description": "Recipient date of birth in YYYYMMDD format. Required only for FDCCompass." - } - } - }, - "senderInformation": { - "type": "object", - "properties": { - "referenceNumber": { - "type": "string", - "maxLength": 19, - "description": "Reference number generated by you that uniquely identifies the sender." - }, - "account": { - "type": "object", - "properties": { - "fundsSource": { - "type": "string", - "minLength": 2, - "maxLength": 2, - "description": "Source of funds. Possible values:\n\n Paymentech, CTV, FDC Compass:\n - 01: Credit card\n - 02: Debit card\n - 03: Prepaid card\n\n Paymentech, CTV -\n - 04: Cash\n - 05: Debit or deposit account that is not linked to a Visa card. Includes checking accounts, savings\n accounts, and proprietary debit or ATM cards.\n - 06: Credit account that is not linked to a Visa card. Includes credit cards and proprietary lines\n of credit.\n\n FDCCompass -\n - 04: Deposit Account\n\n**Funds Disbursement**\n\nThis value is most likely 05 to identify that the originator used a deposit account to fund the\ndisbursement.\n\n**Credit Card Bill Payment**\n\nThis value must be 02, 03, 04, or 05.\n" - }, - "number": { - "type": "string", - "maxLength": 34, - "description": "The account number of the entity funding the transaction. It is the sender\u2019s account number. It can\nbe a debit/credit card account number or bank account number.\n\n**Funds disbursements**\n\nThis field is optional.\n\n**All other transactions**\n\nThis field is required when the sender funds the transaction with a financial instrument, for example\ndebit card.\nLength:\n* FDCCompass (<= 19)\n* Paymentech (<= 16)\n" - } - } - }, - "firstName": { - "type": "string", - "maxLength": 35, - "description": "First name of sender (Optional).\n* CTV (14)\n* Paymentech (30)\n" - }, - "middleInitial": { - "type": "string", - "maxLength": 1, - "description": "Recipient middle initial (Optional).\n" - }, - "middleName": { - "type": "string", - "maxLength": 35, - "description": "Sender\u2019s middle name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n" - }, - "lastName": { - "type": "string", - "maxLength": 35, - "description": "Recipient last name (Optional).\n* CTV (14)\n* Paymentech (30)\n" - }, - "name": { - "type": "string", - "maxLength": 24, - "description": "Name of sender.\n\n**Funds Disbursement**\n\nThis value is the name of the originator sending the funds disbursement.\n* CTV, Paymentech (30)\n" - }, - "address1": { - "type": "string", - "maxLength": 50, - "description": "Street address of sender.\n\n**Funds Disbursement**\n\nThis value is the address of the originator sending the funds disbursement.\n" - }, - "locality": { - "type": "string", - "maxLength": 25, - "description": "City of sender.\n\n**Funds Disbursement**\n\nThis value is the city of the originator sending the funds disbursement.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "Sender\u2019s state. 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).\n" - }, - "countryCode": { - "type": "string", - "maxLength": 2, - "description": "Country of sender. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n* CTV (3)\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Sender\u2019s postal code. Required only for FDCCompass." - }, - "phoneNumber": { - "type": "string", - "maxLength": 20, - "description": "Sender\u2019s phone number. Required only for FDCCompass." - }, - "dateOfBirth": { - "type": "string", - "minLength": 8, - "maxLength": 8, - "description": "Sender\u2019s date of birth in YYYYMMDD format. Required only for FDCCompass." - }, - "vatRegistrationNumber": { - "type": "string", - "maxLength": 13, - "description": "Customer's government-assigned tax identification number.\n" - }, - "personalIdType": { - "type": "string", - "maxLength": 4, - "description": "#### Visa Platform Connect\nThis tag will contain the type of sender identification.\nThe valid values are:\n\u2022 BTHD (Date of birth)\n\u2022 CUID (Customer identification (unspecified))\n\u2022 NTID (National identification)\n\u2022 PASN (Passport number)\n\u2022 DRLN (Driver license)\n\u2022 TXIN (Tax identification)\n\u2022 CPNY (Company registration number)\n\u2022 PRXY (Proxy identification)\n\u2022 SSNB (Social security number)\n\u2022 ARNB (Alien registration number)\n\u2022 LAWE (Law enforcement identification)\n\u2022 MILI (Military identification)\n\u2022 TRVL (Travel identification (non-passport))\n\u2022 EMAL (Email)\n\u2022 PHON (Phone number)\n" - }, - "type": { - "type": "string", - "maxLength": 1, - "description": "#### Visa Platform Connect\nThis tag will denote whether the tax ID is a business or individual tax ID when personal ID Type contains the value of TXIN (Tax identification).\n\nThe valid values are:\n\u2022 B (Business)\n\u2022 I (Individual)\n" - }, - "identificationNumber": { - "type": "string", - "maxLength": 255, - "description": "#### Visa Platform Connect\nThis tag will contain an acquirer-populated value associated with the API : senderInformation.personalIdType which will identify the personal ID type of the sender.\n" - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "businessApplicationId": { - "type": "string", - "maxLength": 2, - "description": "Payouts transaction type.\n\nApplicable Processors: FDC Compass, Paymentech, CtV\n\nPossible values:\n\n**Credit Card Bill Payment**\n\n - **CP**: credit card bill payment\n\n**Funds Disbursement**\n\n - **FD**: funds disbursement\n - **GD**: government disbursement\n - **MD**: merchant disbursement\n\n**Money Transfer**\n\n - **AA**: account to account. Sender and receiver are same person.\n - **PP**: person to person. Sender and receiver are different.\n\n**Prepaid Load**\n\n - **TU**: top up\n" - }, - "networkRoutingOrder": { - "type": "string", - "maxLength": 30, - "description": "This field is optionally used by Push Payments Gateway participants (merchants and acquirers) to get the attributes for specified networks only.\nThe networks specified in this field must be a subset of the information provided during program enrollment. Refer to Sharing Group Code/Network Routing Order.\nNote: Supported only in US for domestic transactions involving Push Payments Gateway Service.\n\nVisaNet checks to determine if there are issuer routing preferences for any of the networks specified by the network routing order.\nIf an issuer preference exists for one of the specified debit networks, VisaNet makes a routing selection based on the issuer\u2019s preference. \nIf an issuer preference exists for more than one of the specified debit networks, or if no issuer preference exists, VisaNet makes a selection based on the acquirer\u2019s routing priorities. \n\nFor details, see the `network_order` field description in [BIN Lookup Service Using the SCMP API.](http://apps.cybersource.com/library/documentation/BIN_Lookup/BIN_Lookup_SCMP_API/html/)\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 13, - "description": "Type of transaction.\n\nValue for an OCT transaction:\n- `internet`\n\nFor details, see the `e_commerce_indicator` field description in [Payouts Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SCMP/html/)\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" - }, - "payoutsOptions": { - "type": "object", - "properties": { - "acquirerMerchantId": { - "type": "string", - "maxLength": 15, - "description": "This field identifies the card acceptor for defining the point of service terminal in both local and interchange environments. An acquirer-assigned code identifying the card acceptor for the transaction. \nDepending on the acquirer and merchant billing and reporting requirements, the code can represent a merchant, a specific merchant location, or a specific merchant location terminal.\nAcquiring Institution Identification Code uniquely identifies the merchant.\nThe value from the original is required in any subsequent messages, including reversals, chargebacks, and representments.\n* Applicable only for CTV for Payouts.\n" - }, - "acquirerBin": { - "type": "string", - "maxLength": 11, - "description": "This code identifies the financial institution acting as the acquirer of this customer transaction. The acquirer is the member or system user that signed the merchant or ADM or dispensed cash. \nThis number is usually Visa-assigned.\n* Applicable only for CTV for Payouts.\n" - }, - "retrievalReferenceNumber": { - "type": "string", - "maxLength": 12, - "description": "This field contains a number that is used with other data elements as a key to identify and track all messages related to a given cardholder transaction;\nthat is, to a given transaction set.\n\nFormat:\n Positions 1-4: The `yddd` equivalent of the date, where `y` = 0-9 and `ddd` = 001 \u2013 366.\n Positions 5-12: A unique identification number generated by the merchant\n\n* Applicable only for CTV for Payouts.\n" - }, - "accountFundingReferenceId": { - "type": "string", - "maxLength": 15, - "description": "Visa-generated transaction identifier (TID) that is unique for each original authorization and financial request.\n* Applicable only for CTV for Payouts.\n" - } - } - }, - "transactionReason": { - "type": "string", - "maxLength": 4, - "description": "Transaction reason code.\n" - }, - "purposeOfPayment": { - "type": "string", - "maxLength": 12, - "description": "This will send purpose of funds code for original credit transactions (OCTs).\n" - }, - "fundingOptions": { - "type": "object", - "properties": { - "initiator": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 1, - "description": "#### Visa Platform Connect :\nThis API will contain a code that denotes whether the customer identification data belongs to the sender or the recipient.\n\nThe valid values are:\n\u2022 S (Payer (sender))\n\u2022 R (Payee (recipient))\n" - } - } - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "number": { - "type": "string", - "maxLength": 20, - "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "sourceAccountType": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", - "minLength": 1, - "maxLength": 32 - } - } - } - } - } - }, - "example": { - "clientReferenceInformation": { - "code": "33557799" - }, - "senderInformation": { - "referenceNumber": "1234567890", - "address1": "900 Metro Center Blvd.900", - "countryCode": "US", - "locality": "Foster City", - "name": "Thomas Jefferson", - "administrativeArea": "CA", - "account": { - "number": "1234567890123456789012345678901234", - "fundsSource": "01" - } - }, - "processingInformation": { - "commerceIndicator": "internet", - "businessApplicationId": "FD", - "networkRoutingOrder": "ECG" - }, - "payoutsOptions": { - "retrievalReferenceNumber": "123456789012", - "acquirerBin": "567890124" - }, - "reconciliationId": "1087488702VIAQNSPQ", - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "merchantInformation": { - "merchantCategoryCode": "123", - "merchantDescriptor": { - "country": "US", - "postalCode": "94440", - "locality": "FC", - "name": "Thomas", - "administrativeArea": "CA" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2025", - "number": "4111111111111111", - "expirationMonth": "12", - "type": "001", - "sourceAccountType": "CH" - } - }, - "recipientInformation": { - "firstName": "John", - "lastName": "Doe", - "address1": "Paseo Padre Boulevard", - "locality": "Foster City", - "administrativeArea": "CA", - "postalCode": "94400", - "phoneNumber": "6504320556", - "dateOfBirth": "19801009", - "country": "US" - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "ptsV2PayoutsPost201Response", - "example": { - "_links": { - "self": { - "href": "/pts/v2/payouts/5287556536256000401540", - "method": "GET" - } - }, - "clientReferenceInformation": { - "code": "1528755653559" - }, - "id": "5287556536256000401540", - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "processorInformation": { - "systemTraceAuditNumber": "897596", - "approvalCode": "831000", - "transactionId": "016153570198200", - "responseCode": "00", - "responseCodeSource": "5" - }, - "reconciliationId": "1087488702VIAQNSPQ", - "status": "ACCEPTED", - "submitTimeUtc": "2018-06-11T222054Z" - }, - "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." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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\ntime. The Z indicates UTC.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n - DECLINED\n - INVALID_REQUEST\n" - }, - "reconciliationId": { - "type": "string", - "maxLength": 25, - "description": "Cybersource or merchant generated transaction reference number. This is sent to the processor and is echoed back in the response to the merchant. This is\nThis value is used for reconciliation purposes.\n" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - STOLEN_LOST_CARD\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - INVALID_CVN\n - BLACKLISTED_CUSTOMER\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - RISK_CONTROL_DECLINE\n - PROCESSOR_RISK_CONTROL_DECLINE\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\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" - } - } - } - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - }, - "locality": { - "type": "string", - "maxLength": 13, - "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" - } - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "settlementAmount": { - "type": "string", - "maxLength": 12, - "description": "This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder\u2019s account.\nThis field is returned for OCT transactions.\n" - }, - "settlementCurrency": { - "type": "string", - "maxLength": 3, - "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder's account.\nThis field is returned for OCT transactions.\n" - } - } - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Issuer-generated approval code for the transaction." - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "Transaction status from the processor." - }, - "transactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier (TID). This value can be used to identify a specific transaction when\nyou are discussing the transaction with your processor.\n" - }, - "systemTraceAuditNumber": { - "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" - }, - "responseCodeSource": { - "type": "string", - "maxLength": 1, - "description": "Used by Visa only and contains the response source/reason code that identifies the source of the response decision.\n" - } - } - }, - "recipientInformation": { - "type": "object", - "properties": { - "card": { - "type": "object", - "properties": { - "balance": { - "type": "string", - "maxLength": 12, - "description": "This field shows the available balance in the prepaid account.\nAcquirers always receive the available balance in the transaction currency.\n" - }, - "currency": { - "type": "string", - "maxLength": 3, - "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer.\n" - } - } - } - } - } - }, - "type": "object" - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "ptsV2PayoutsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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\ntime. The Z indicates UTC.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction." - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "ptsV2PayoutsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Payout (Card not Token)", - "sample-name": "Process Payout Card", - "value": { - "clientReferenceInformation": { - "code": "33557799" - }, - "senderInformation": { - "referenceNumber": "1234567890", - "address1": "900 Metro Center Blvd.900", - "countryCode": "US", - "locality": "Foster City", - "name": "Company Name", - "administrativeArea": "CA", - "account": { - "fundsSource": "05" - } - }, - "processingInformation": { - "commerceIndicator": "internet", - "businessApplicationId": "FD", - "networkRoutingOrder": "V8" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "merchantInformation": { - "merchantDescriptor": { - "country": "US", - "postalCode": "94440", - "locality": "FC", - "name": "Sending Company Name", - "administrativeArea": "CA" - } - }, - "paymentInformation": { - "card": { - "expirationYear": "2025", - "number": "4111111111111111", - "expirationMonth": "12", - "type": "001" - } - }, - "recipientInformation": { - "firstName": "John", - "lastName": "Doe", - "address1": "Paseo Padre Boulevard", - "locality": "Foster City", - "administrativeArea": "CA", - "postalCode": "94400", - "phoneNumber": "6504320556", - "country": "US" - } - } - }, - "example1": { - "summary": "Payout (Token)", - "sample-name": "Process Payout Token", - "value": { - "clientReferenceInformation": { - "code": "111111113" - }, - "senderInformation": { - "referenceNumber": "1234567890", - "address1": "900 Metro Center Blvd.900", - "countryCode": "US", - "locality": "Foster City", - "name": "Company Name", - "administrativeArea": "CA", - "account": { - "number": "1234567890123456789012345678901234", - "fundsSource": "05" - } - }, - "processingInformation": { - "commerceIndicator": "internet", - "businessApplicationId": "FD", - "networkRoutingOrder": "V8" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "111.00", - "currency": "USD" - } - }, - "merchantInformation": { - "merchantDescriptor": { - "country": "US", - "postalCode": "94440", - "locality": "FC", - "name": "Sending Company Name", - "administrativeArea": "CA" - } - }, - "paymentInformation": { - "customer": { - "customerId": "7500BB199B4270EFE05340588D0AFCAD" - } - }, - "recipientInformation": { - "firstName": "John", - "lastName": "Doe", - "address1": "Paseo Padre Boulevard", - "locality": "Foster City", - "administrativeArea": "CA", - "postalCode": "94400", - "phoneNumber": "6504320556", - "country": "US" - } - } - } - } - } - }, - "/tss/v2/transactions/{id}": { - "get": { - "summary": "Retrieve a Transaction", - "description": "Include the Request ID in the GET request to retrieve the transaction details.", - "tags": [ - "TransactionDetails" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "operationId": "getTransaction", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Details", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_details_api.html" - }, - "parameters": [ - { - "name": "id", - "in": "path", - "description": "Request ID.\n", - "required": true, - "type": "string" - } - ], - "x-depends": { - "example": { - "path": "/pts/v2/payments", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Successful response.", - "schema": { - "title": "tssV2TransactionsGet200Response", - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "rootId": { - "type": "string", - "maxLength": 26, - "description": "Contains the transaction identifier for the first transaction in the series of transactions. For example, you might send an authorization request for a payment, followed by a capture request for that payment, and then a refund request for that captured payment. Each of those requests, if successful, creates a resource that is assigned an identifier, which is returned in the response. The rootId identifies the first ID in the series, which in this case would be the ID of the original authorization." - }, - "reconciliationId": { - "type": "string", - "maxLength": 60, - "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" - }, - "merchantId": { - "type": "string", - "description": "Your CyberSource merchant ID." - }, - "submitTimeUTC": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "applicationInformation": { - "type": "object", - "properties": { - "status": { - "type": "string", - "description": "The status of the submitted transaction." - }, - "reasonCode": { - "type": "string", - "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" - }, - "rCode": { - "type": "string", - "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n" - }, - "applications": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.\n" - }, - "status": { - "type": "string", - "description": "The description for this field is not available." - }, - "reasonCode": { - "type": "string", - "description": "3-digit reason code that indicates why the customer profile payment succeeded or failed." - }, - "rCode": { - "type": "string", - "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n" - }, - "reconciliationId": { - "type": "string", - "description": "Reference number that you use to reconcile your CyberSource reports with your processor reports.\n" - }, - "rMessage": { - "type": "string", - "description": "Message that explains the reply flag for the application.\n" - }, - "returnCode": { - "type": "integer", - "description": "The description for this field is not available." - } - } - } - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "hashedPassword": { - "type": "string", - "maxLength": 100, - "description": "The merchant's password that CyberSource hashes and stores as a hashed password.\n\nFor details about this field, see the `customer_password` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "applicationVersion": { - "type": "string", - "description": "Version of the CyberSource application or integration used for a transaction.\n" - }, - "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.\n" - }, - "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.\n" - }, - "partner": { - "type": "object", - "properties": { - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - }, - "comments": { - "type": "string", - "maxLength": 255, - "description": "Brief description of the order or any comment you wish to add to the order.\n" - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "eciRaw": { - "type": "string", - "maxLength": 2, - "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "cavv": { - "type": "string", - "maxLength": 40, - "description": "Cardholder authentication verification value (CAVV)." - }, - "xid": { - "type": "string", - "maxLength": 40, - "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "transactionId": { - "type": "string", - "description": "Payer auth Transaction identifier." - }, - "strongAuthentication": { - "type": "object", - "properties": { - "lowValueExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the low value exemption indicator with one of the following values:\nPossible values:\n- `0` ( low value exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment)\n" - }, - "riskAnalysisExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the transaction risk analysis exemption indicator with one of the following values:\nPossible values:\n- `0` (TRA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS)\n" - }, - "trustedMerchantExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "Possible values:\n- `0` (Trusted merchant exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder)\n" - }, - "secureCorporatePaymentIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the secure corporate payment exemption indicator with one of the following values:\nPossible values:\n- `0` (SCA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment)\n" - }, - "delegatedAuthenticationExemptionIndicator": { - "type": "string", - "maxLength": 1, - "description": "This field will contain the delegated authentication exemption indicator with one of the following values:\nPossible values:\n- `0` (delegated Authentication exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer))\n" - } - } - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - }, - "hostName": { - "type": "string", - "maxLength": 60, - "description": "DNS resolved hostname from `ipAddress`." - }, - "cookiesAccepted": { - "type": "string", - "description": "Whether the customer\u2019s browser accepts cookies. This field can contain one of the following values:\n- `yes`: The customer\u2019s browser accepts cookies.\n- `no`: The customer\u2019s browser does not accept cookies.\n" - } - } - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "1-word description of why a request succeeded or failed.\n" - }, - "message": { - "type": "string", - "description": "The user-facing description for why a request succeeded or failed.\n" - }, - "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" - } - } - } - } - } - }, - "installmentInformation": { - "type": "object", - "properties": { - "numberOfInstallments": { - "type": "string", - "description": "Number of Installments." - }, - "identifier": { - "type": "string", - "maximum": 60, - "description": "Standing Instruction/Installment identifier.\n" - } - } - }, - "fraudMarkingInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.\n- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.\n- suspected: You believe that you will probably receive a chargeback for the transaction.\n- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.\n" - } - } - }, - "healthCareInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "array", - "description": "array for Healthcare fields", - "items": { - "type": "object", - "properties": { - "amountType": { - "type": "string", - "maxLength": 35, - "description": "Total amount that has been spent on healthcare in a transaction.\nValid Values for **Visa**:\n- `healthcare` - Total Amount Healthcare\n- `healthcare-transit` - Amount Transit\n- `vision` - Amount Vision/Optical\n- `prescription` - Amount Prescription/RX\n- `clinic` - Amount Clinic/Other Qualified Medical\n- `dental` - Amount Dental\n\n\n`Note:` - Prescription, Clinic and dental amounts must be preceded with the total healthcare amount and cannot occur individually. Vision and Transit must be sent individually and cannot be combined with total healthcare amount or any other amounts. Total Healthcare amount can be sent individually.\n\nValid Values for **MasterCard**:\n- `prescription` - Amount Prescription/RX\n- `eligible-total` - Total Amount Healthcare\n\n\n`Note:` - Prescription must be preceded with the total healthcare amount and cannot occur individually. Total Healthcare amount can be sent individually.\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total Amount that has been spent on the corresponding amountType. This is 13 byte field including sign.\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n" - } - } - } - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "merchantDescriptor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" - } - } - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "middleName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s middle name.\n" - }, - "nameSuffix": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s name suffix.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "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#### 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" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "title": { - "type": "string", - "maxLength": 60, - "description": "Title.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 20, - "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "company": { - "type": "string", - "maxLength": 60, - "description": "Name of the customer\u2019s company.\n\nFor processor-specific information, see the company_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." - } - } - }, - "lineItems": { - "type": "array", - "description": "Transaction Line Item data.", - "items": { - "type": "object", - "properties": { - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. This value is used to determine the category that the product is in: electronic, handling,\nphysical, service, or shipping. The default value is **default**.\n\nFor a payment, when you set this field to a value other than default or any of the values related to\nshipping and handling, below fields _quantity_, _productName_, and _productSKU_ are required.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For PAYMENT and CAPTURE API, this field is required when above _productCode_ is not **default** or one of the\nvalues related to shipping and handling.\n" - }, - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Identification code for the product. For Payment and Capture APIs, this field is required when above\n`productCode` is not **default** or one of the values related to shipping and/or handling.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n1. You include each line item in your request.\n - 1st line item has `amount=10.00`, `quantity=1`, and `taxAmount=0.80`\n - 2nd line item has `amount=20.00`, `quantity=1`, and `taxAmount=1.60`\n2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nThis field is frequently used for Level II and Level III transactions.\n\nFor details, see `tax_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "description": "For a payment or capture, this field is required when _productCode_ is not **default** or one of the values\nrelated to shipping and handling.\n", - "default": 1 - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value cannot be negative. You can include a decimal point (.), but you\ncannot include any other special characters. CyberSource truncates the amount to the correct number of decimal\nplaces.\n\nFor processor-specific information, see the amount field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - }, - "fulfillmentType": { - "type": "string", - "description": "The description for this field is not available." - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 12, - "description": "Total tax amount for all the items in the order.\n" - }, - "authorizedAmount": { - "type": "string", - "maxLength": 15, - "description": "Amount that was authorized.\n\nReturned by authorization service.\n\n#### PIN debit\nAmount of the purchase.\n\nReturned by PIN debit purchase.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in Merchant Descriptors Using the SCMP API.\n" - }, - "settlementAmount": { - "type": "string", - "maxLength": 12, - "description": "This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder\u2019s account.\nThis field is returned for OCT transactions.\n" - }, - "settlementCurrency": { - "type": "string", - "maxLength": 3, - "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder's account.\nThis field is returned for OCT transactions.\n" - }, - "surcharge": { - "type": "object", - "properties": { - "amount": { - "type": "string", - "maxLength": 15, - "description": "The surcharge amount is included in the total transaction amount but is passed in a separate field to the issuer and acquirer for tracking. The issuer can provide information about the surcharge amount to the customer.\n\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n\n**NOTE**: This field is supported only for CyberSource through VisaNet (CtV) for Payouts. For CtV, the maximum string length is 8.\n\n#### PIN debit\nSurcharge amount that you are charging the customer for this transaction. If you include a surcharge amount\nin the request, you must also include the surcharge amount in the value for `orderInformation.amountDetails.totalAmount`.\n\nOptional field for transactions that use PIN debit credit or PIN debit purchase.\n" - } - } - } - } - }, - "shippingDetails": { - "type": "object", - "properties": { - "giftWrap": { - "type": "boolean", - "description": "Boolean that indicates whether the customer requested gift wrapping for this\npurchase. This field can contain one of the following\nvalues:\n- true: The customer requested gift wrapping.\n- false: The customer did not request gift wrapping.\n" - }, - "shippingMethod": { - "type": "string", - "maxLength": 10, - "description": "Shipping method for the product. Possible values:\n\n - `lowcost`: Lowest-cost service\n - `sameday`: Courier or same-day service\n - `oneday`: Next-day or overnight service\n - `twoday`: Two-day service\n - `threeday`: Three-day service\n - `pickup`: Store pick-up\n - `other`: Other shipping method\n - `none`: No shipping method because product is a service or subscription\n" - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "salesSlipNumber": { - "type": "integer", - "maximum": 99999, - "description": "Transaction identifier that is generated. You have the option of printing the sales slip number on the receipt.\nThis field is supported only on Cybersource through Visanet and JCN gateway.\n\nOptional field.\n\n#### Card Present processing message\nIf you included this field in the request, the returned value is the value that you sent in the request.\nIf you did not include this field in the request, the system generated this value for you.\n\nThe difference between this reply field and the `processorInformation.systemTraceAuditNumber` field is that the\nsystem generates the system trace audit number (STAN), and you must print the receipt number on the receipt;\nwhereas you can generate the sales slip number, and you can choose to print the sales slip number on the receipt.\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" - }, - "type": { - "type": "string", - "description": "Indicates the payment type used in this payment transaction. Example: credit card, check" - }, - "method": { - "type": "string", - "description": "Indicates the payment method used in this payment transaction." - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "id": { - "type": "string", - "description": "Unique identifier for the Customer token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "prefix": { - "type": "string", - "maxLength": 6, - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationMonth": { - "type": "string", - "maxLength": 2, - "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "expirationYear": { - "type": "string", - "maxLength": 4, - "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "startMonth": { - "type": "string", - "maxLength": 2, - "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "startYear": { - "type": "string", - "maxLength": 4, - "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" - }, - "issueNumber": { - "type": "string", - "maxLength": 5, - "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - }, - "accountEncoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" - }, - "useAs": { - "type": "string", - "maxLength": 20, - "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\n#### Cielo and Comercio Latino\n\nPossible values:\n\n - CREDIT: Credit card\n - DEBIT: Debit card\n\nThis field is required for:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n\n**Note** The value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR0\n- Position: 51\n- Field: Combination Card Transaction Identifier\n\nThis field is supported only for Mastercard transactions in Brazil on CyberSource through VisaNet.\n" - } - } - }, - "invoice": { - "type": "object", - "properties": { - "number": { - "type": "string", - "description": "Invoice Number." - }, - "barcodeNumber": { - "type": "string", - "description": "Barcode Number." - }, - "expirationDate": { - "type": "string", - "description": "Expiration Date." - } - } - }, - "bank": { - "type": "object", - "properties": { - "routingNumber": { - "type": "string", - "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" - }, - "branchCode": { - "type": "string", - "description": "Code used to identify the branch of the customer\u2019s bank.\nRequired for some countries if you do not or are not\nallowed to provide the IBAN. Use this field only when\nscoring a direct debit transaction.\n\nFor all possible values, see the `branch_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "swiftCode": { - "type": "string", - "description": "Bank\u2019s SWIFT code. You can use this field only when scoring a direct debit transaction.\nRequired only for crossborder transactions.\n\nFor all possible values, see the `bank_swiftcode` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "bankCode": { - "type": "string", - "description": "Country-specific code used to identify the customer\u2019s\nbank. Required for some countries if you do not or are not\nallowed to provide the IBAN instead. You can use this field\nonly when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "iban": { - "type": "string", - "maxLength": 50, - "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "account": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the customer\u2019s payment account number.\n" - }, - "prefix": { - "type": "string", - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" - }, - "checkNumber": { - "type": "string", - "maxLength": 8, - "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" - }, - "type": { - "type": "string", - "maxLength": 1, - "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" - }, - "name": { - "type": "string", - "description": "Name used on the bank account. You can use this field only when scoring a direct debit transaction\n" - }, - "checkDigit": { - "type": "string", - "description": "Code used to validate the customer\u2019s account number.\nRequired for some countries if you do not or are not\nallowed to provide the IBAN instead. You may use this\nfield only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_check_digit` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" - }, - "encoderId": { - "type": "string", - "maxLength": 3, - "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "mandate": { - "type": "object", - "properties": { - "referenceNumber": { - "type": "string", - "description": "Unique value generated by CyberSource that identifies the transaction. Use this value to identify transactions in the Collections Report, which provides settlement\ninformation.\n\nFor details, see the `direct_debit_reconciliation_reference_number` reply field description in [Ingenico ePayments Developer Guide For Direct Debits.](https://apps.cybersource.com/library/documentation/dev_guides/Ingenico_ePayments_Dev/html/)\n" - }, - "recurringType": { - "type": "string", - "description": "Whether the direct debit is the first or last direct debit associated with the mandate, or one in between.\nRequired only for the United Kingdom.\nPossible values:\n- `001`: First direct debit associated with this mandate. Use this value if a one-time direct debit).\n- `002`: Subsequent direct debits associated with this mandate.\n- `003`: Last direct debit associated with this mandate.\n\nFor details, see the `direct_debit_recurring_type` request field description in [Ingenico ePayments Developer Guide For Direct Debits.](https://apps.cybersource.com/library/documentation/dev_guides/Ingenico_ePayments_Dev/html/)\n" - }, - "id": { - "type": "string", - "description": "The mandate ID. Required only for the United Kingdom.\n\nFor details, see the `mandate_id` request field description in [Ingenico ePayments Developer Guide For Direct Debits.](https://apps.cybersource.com/library/documentation/dev_guides/Ingenico_ePayments_Dev/html/)\n" - } - } - } - } - }, - "accountFeatures": { - "type": "object", - "properties": { - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "previousBalanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "currency": { - "type": "string", - "maxLength": 5, - "description": "Currency of the remaining balance on the account. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nReturned by authorization service.\n\n#### PIN debit\nCurrency of the remaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 12, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - } - } - }, - "paymentInsightsInformation": { - "type": "object", - "properties": { - "responseInsights": { - "type": "object", - "properties": { - "category": { - "type": "string", - "maxLength": 60, - "description": "Categorization of response message from processor\n\nPossible Values:\n- `APPROVED`\n- `ISSUER_WILL_NEVER_APPROVE`\n- `ISSUER_CANT_APPROVE_AT_THIS_TIME`\n- `ISSUER_CANT_APPROVE_WITH_THESE_DETAILS`\n- `GENERIC_ERROR`\n- `OTHERS`\n- `MATCH_NOT_FOUND`\n" - }, - "categoryCode": { - "type": "string", - "maxLength": 2, - "description": "Categorization Code of response message from processor\n\nPossible Values:\n- `01` : Issuer Will Never Approve\n- `02` : Issuer Can't Approve at this Time\n- `03` : Issuer Can't Approve with these Details\n- `04` : Generic Error\n- `98` : Others\n- `99` : Payment Insights Response Category Match Not Found\n" - } - } - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "industryDataType": { - "type": "string", - "maxLength": 20, - "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" - }, - "paymentSolution": { - "type": "string", - "maxLength": 50, - "description": "Type of digital payment solution for the transaction.\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" - }, - "businessApplicationId": { - "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" - }, - "authorizationOptions": { - "type": "object", - "properties": { - "authType": { - "type": "string", - "maxLength": 15, - "description": "Authorization type. Possible values:\n\n - `AUTOCAPTURE`: automatic capture.\n - `STANDARDCAPTURE`: standard capture.\n - `VERBAL`: forced capture. Include it in the payment request for a forced capture. Include it in the capture request for a verbal payment.\n\n#### Asia, Middle East, and Africa Gateway; Cielo; Comercio Latino; and CyberSource Latin American Processing\nSet this field to `AUTOCAPTURE` and include it in a bundled request to indicate that you are requesting an automatic capture. If your account is configured to enable automatic captures, set this field to `STANDARDCAPTURE` and include it in a standard authorization or bundled request to indicate that you are overriding an automatic capture. For more information, see the `auth_type` field description in [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Forced Capture\nSet this field to `VERBAL` and include it in the authorization request to indicate that you are performing a forced capture; therefore, you receive the authorization code outside the CyberSource system.\n\n#### Verbal Authorization\nSet this field to `VERBAL` and include it in the capture request to indicate that the request is for a verbal authorization. For more information, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" - }, - "initiator": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction.\n\nValid values:\n- **customer**\n- **merchant**\n" - }, - "credentialStoredOnFile": { - "type": "string", - "description": "Indicates to the issuing bank two things:\n- The merchant has received consent from the cardholder to store their card details on file\n- The merchant wants the issuing bank to check out the card details before the merchant initiates their first transaction for this cardholder.\nThe purpose of the merchant-initiated transaction is to ensure that the cardholder\u2019s credentials are valid (that the card is not stolen or has restrictions) and that the card details are good to be stored on the merchant\u2019s file for future transactions.\n\nValid values:\n- `Y` means merchant will use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n- `N` means merchant will not use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n\nFor details, see `subsequent_auth_first` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**NOTE:** The value for this field does not correspond to any data in the TC 33 capture file5.\n\nThis field is supported only for Visa transactions on CyberSource through VisaNet.\n" - }, - "storedCredentialUsed": { - "type": "string", - "description": "Indicates to an issuing bank whether a merchant-initiated transaction came from a card that was already stored on file.\n\nPossible values:\n- **Y** means the merchant-initiated transaction came from a card that was already stored on file.\n- **N** means the merchant-initiated transaction came from a card that was not stored on file.\n" - }, - "merchantInitiatedTransaction": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "maxLength": 1, - "description": "Reason for the merchant-initiated transaction or incremental authorization. Possible values:\n- `1`: Resubmission\n- `2`: Delayed charge\n- `3`: Reauthorization for split shipment\n- `4`: No show\n- `5`: Account top up\nThis field is required only for the five kinds of transactions in the preceding list.\nThis field is supported only for merchant-initiated transactions and incremental authorizations.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR0\n- Position: 160-163\n- Field: Message Reason Code\n\n#### All Processors\nFor details, see `subsequent_auth_reason` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "previousTransactionId": { - "type": "string", - "maxLength": 15, - "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n\nIf the current payment request includes a token instead of an account number, the following time limits apply for the value of this field:\n- For a **resubmission**, the transaction ID must be less than 14 days old.\n- For a **delayed charge** or **reauthorization**, the transaction ID must be less than 30 days old.\n\n**NOTE**: The value for this field does not correspond to any data in the TC 33 capture file5. This field is supported\nonly for Visa transactions on CyberSource through VisaNet.\n" - }, - "originalAuthorizedAmount": { - "type": "string", - "maxLength": 61, - "description": "Amount of the original authorization.\n\nThis field is supported only for Apple Pay, Google Pay, and Samsung Pay transactions with Discover on FDC Nashville Global and Chase Paymentech.\n\nSee \"Recurring Payments,\" and \"Subsequent Authorizations,\" field description in the [Payment Network Tokenization\nUsing the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/tokenization_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" - } - } - } - } - } - } - }, - "bankTransferOptions": { - "type": "object", - "properties": { - "secCode": { - "type": "string", - "description": "Specifies the authorization method for the transaction.\n\nPossible values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n" - } - } - }, - "japanPaymentOptions": { - "type": "object", - "properties": { - "paymentMethod": { - "type": "string", - "maxLength": 2, - "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" - }, - "terminalId": { - "type": "string", - "maxLength": 13, - "description": "Unique Japan Credit Card Association (JCCA) terminal identifier.\n\nThe difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define\n`pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is\ndefined by the JCCA and is used only in Japan.\n\nThis field is supported only on CyberSource through VisaNet and JCN Gateway.\n\nOptional field.\n" - }, - "businessName": { - "type": "string", - "maxLength": 25, - "description": "Business name in Japanese characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" - }, - "businessNameKatakana": { - "type": "string", - "maxLength": 25, - "description": "Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" - } - } - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "processor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\n" - } - } - }, - "multiProcessorRouting": { - "type": "array", - "description": "An array of object that contains the list of acquirer response codes & reasons if a transaction is routed to multiple acquirers.", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "reasonCode": { - "type": "string", - "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" - }, - "sequence": { - "type": "string", - "description": "The order in which the transaction was routed to the processor\n" - } - } - } - }, - "transactionId": { - "type": "string", - "maxLength": 50, - "description": "Network transaction identifier (TID). You can use this value to identify a specific transaction when you are\ndiscussing the transaction with your processor. Not all processors provide this value.\n\nReturned by the authorization service.\n\n#### PIN debit\nTransaction identifier generated by the processor.\n\nReturned by PIN debit credit.\n\n#### GPX\nProcessor transaction ID.\n\n#### Cielo\nFor Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.\n\n#### Comercio Latino\nFor Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.\n\n#### CyberSource through VisaNet and GPN\nFor details about this value for CyberSource through VisaNet and GPN, see \"Network Transaction Identifiers\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Moneris\nThis value identifies the transaction on a host system. It contains the following information:\n- Terminal used to process the transaction\n- Shift during which the transaction took place\n- Batch number\n- Transaction number within the batch\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\n**Example** For the value\n66012345001069003:\n- Terminal ID = 66012345\n- Shift number = 001\n- Batch number = 069\n- Transaction number = 003\n" - }, - "networkTransactionId": { - "type": "string", - "description": "Same value as `processorInformation.transactionId`" - }, - "retrievalReferenceNumber": { - "type": "string", - "maxLength": 20, - "description": "#### Ingenico ePayments\nUnique number that CyberSource generates to identify the transaction. You can use this value to identify transactions in the Ingenico ePayments Collections Report, which provides settlement information. Contact customer support for information about the report.\n\n### CyberSource through VisaNet\nRetrieval request number.\n" - }, - "responseId": { - "type": "string", - "description": "Response ID sent from the processor.\n" - }, - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - }, - "responseCode": { - "type": "string", - "maxLength": 10, - "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" - }, - "avs": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 1, - "description": "AVS result code.\n\nReturned by authorization service.\n" - }, - "codeRaw": { - "type": "string", - "maxLength": 10, - "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\n**Important** Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\n\nReturned by authorization service.\n" - } - } - }, - "cardVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 1, - "description": "CVN result code.\n\nFor details, see the `auth_cv_result` reply field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "achVerification": { - "type": "object", - "properties": { - "resultCode": { - "type": "string", - "maxLength": 2, - "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - }, - "resultCodeRaw": { - "type": "string", - "maxLength": 10, - "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" - } - } - }, - "electronicVerificationResults": { - "type": "object", - "properties": { - "email": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s email address.\n\nFor details, see `auth_ev_email` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "emailRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s email address." - }, - "name": { - "type": "string", - "maxLength": 30, - "description": "Mapped Electronic Verification response code for the customer\u2019s name.\n" - }, - "nameRaw": { - "type": "string", - "maxLength": 30, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s name.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s phone number.\n\nFor details, see `auth_ev_phone_number` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "phoneNumberRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s phone number." - }, - "street": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s street address.\n\nFor details, see `auth_ev_street` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "streetRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s street address." - }, - "postalCode": { - "type": "string", - "maxLength": 1, - "description": "Mapped Electronic Verification response code for the customer\u2019s postal code.\n\nFor details, see `auth_ev_postal_code` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "postalCodeRaw": { - "type": "string", - "maxLength": 1, - "description": "Raw Electronic Verification response code from the processor for the customer\u2019s postal code." - } - } - }, - "systemTraceAuditNumber": { - "type": "string", - "maxLength": 6, - "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" - }, - "responseCodeSource": { - "type": "string", - "maxLength": 1, - "description": "Used by Visa only and contains the response source/reason code that identifies the source of the response decision.\n" - }, - "paymentAccountReferenceNumber": { - "type": "string", - "maxLength": 32, - "description": "Visa-generated reference number that identifies a card-present transaction for which you provided one of the\nfollowing:\n\n - Visa primary account number (PAN)\n - Visa-generated token for a PAN\n\nThis reference number serves as a link to the cardholder account and to all transactions for that account.\nThis reply field is returned only for CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR8\n- Position: 79-110\n- Field: Payment Account Reference\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s acquirer,\nwho uses this information to facilitate end-of-day clearing processing with payment networks.\n" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - }, - "entryMode": { - "type": "string", - "maxLength": 11, - "description": "Method of entering payment card information into the POS terminal. Possible values:\n\n - `contact`: Read from direct contact with chip card.\n - `contactless`: Read from a contactless interface using chip data.\n - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.\n - `swiped`: Read from credit card magnetic stripe.\n\nThe `contact`, `contactless`, and `msd` values are supported only for EMV transactions.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### Card Present\nCard present information about EMV applies only to credit card processing and PIN debit processing. All other\ncard present information applies only to credit card processing.\n\n#### PIN debit\nRequired for a PIN debit purchase and a PIN debit credit request.\n" - }, - "terminalCapability": { - "type": "integer", - "minimum": 1, - "maximum": 5, - "description": "POS terminal\u2019s capability. Possible values:\n\n - `1`: Terminal has a magnetic stripe reader only.\n - `2`: Terminal has a magnetic stripe reader and manual entry capability.\n - `3`: Terminal has manual entry capability only.\n - `4`: Terminal can read chip cards.\n - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards.\n\nFor an EMV transaction, the value of this field must be `4` or `5`.\n\n#### PIN debit\nRequired for PIN debit purchase and PIN debit credit request.\n\n#### Used by\n**Authorization**\nRequired for the following processors:\n- American Express Direct\n- Chase Paymentech Solutions\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- FDMS Nashville\n- OmniPay Direct\n- SIX\n- Worldpay VAP\n\nOptional for the following processors:\n- CyberSource through VisaNet\n- GPN\n- GPX\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n" - }, - "emv": { - "type": "object", - "properties": { - "tags": { - "type": "string", - "maxLength": 1998, - "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" - } - } - } - } - }, - "riskInformation": { - "type": "object", - "properties": { - "profile": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the profile.\n" - }, - "decision": { - "type": "string", - "description": "Decision returned by the profile; this field contains one of these values:\n- ACCEPT\n- REJECT\n- REVIEW\n" - } - } - }, - "rules": { - "type": "array", - "items": { - "type": "object", - "description": "Names of one or more rules that were processed, and the decisions made by the rules.", - "properties": { - "name": { - "type": "string", - "maxLength": 255, - "description": "Description of the rule as it appears in the Profile Editor." - }, - "decision": { - "type": "string", - "maxLength": 255, - "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" - } - } - } - }, - "passiveProfile": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the profile.\n" - }, - "decision": { - "type": "string", - "description": "Decision returned by the profile; this field contains one of these values:\n- ACCEPT\n- REJECT\n- REVIEW\n" - } - } - }, - "passiveRules": { - "type": "array", - "items": { - "type": "object", - "description": "Names of one or more rules that were processed, and the decisions made by the rules.", - "properties": { - "name": { - "type": "string", - "maxLength": 255, - "description": "Description of the rule as it appears in the Profile Editor." - }, - "decision": { - "type": "string", - "maxLength": 255, - "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" - } - } - } - }, - "score": { - "type": "object", - "properties": { - "factorCodes": { - "type": "array", - "description": "Array of factor codes.", - "items": { - "type": "string", - "description": "Represents a factor code." - } - }, - "result": { - "type": "integer", - "description": "The description for this field is not available.\n" - } - } - }, - "localTime": { - "type": "string", - "description": "Time that the transaction was submitted in local time. Generated by Cybersource." - } - } - }, - "senderInformation": { - "type": "object", - "properties": { - "referenceNumber": { - "type": "string", - "maxLength": 19, - "description": "Reference number generated by you that uniquely identifies the sender." - } - } - }, - "tokenInformation": { - "type": "object", - "properties": { - "customer": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customer token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "paymentInstrument": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Payment Instrument token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "shippingAddress": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Customers Shipping Address token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 1, - "maxLength": 32 - } - } - }, - "instrumentIdentifier": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Unique identifier for the Instrument Identifier token that was created as part of a bundled TOKEN_CREATE action.\n", - "minLength": 12, - "maxLength": 32 - } - } - } - } - }, - "_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." - } - } - }, - "relatedTransactions": { - "type": "array", - "items": { - "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." - } - } - } - } - } - } - }, - "example": { - "id": "5330579740206278601009", - "rootId": "5330571038726320201013", - "reconciliationId": "53703847LK9LPPXY", - "merchantId": "pa_rbsworldpay", - "submitTimeUtc": "2018-07-31T17:26:14Z", - "applicationInformation": { - "status": "PENDING", - "reasonCode": "100", - "rCode": "1", - "rFlag": "SOK", - "applications": [ - { - "name": "ics_bill", - "status": "PENDING", - "reasonCode": "100", - "rCode": "1", - "rFlag": "SOK", - "reconciliationId": "53703847LK9LPPXY", - "rMessage": "Request was processed successfully.", - "returnCode": 1260000 - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "123456", - "hashedPassword": "fhjfhj" - }, - "clientReferenceInformation": { - "code": "ECERT001", - "applicationVersion": "1.0", - "applicationName": "SCMP API", - "applicationUser": "ng_paymentech", - "partner": { - "solutionId": "89012345" - }, - "comments": "test comment" - }, - "consumerAuthenticationInformation": { - "eciRaw": "02", - "cavv": "12345", - "xid": "12345678", - "transactionId": "00152259513040478521", - "strongAuthentication": { - "lowValueExemptionIndicator": "1", - "riskAnalysisExemptionIndicator": "1", - "trustedMerchantExemptionIndicator": "1", - "secureCorporatePaymentIndicator": "1", - "delegatedAuthenticationExemptionIndicator": "1" - } - }, - "deviceInformation": { - "ipAddress": "1.10.10.10", - "hostName": "cybs test", - "cookiesAccepted": "no" - }, - "errorInformation": { - "reason": "1", - "message": "abc", - "details": [ - { - "field": "xyz", - "reason": "1" - } - ] - }, - "installmentInformation": { - "numberOfInstallments": 0, - "identifier": "1234567" - }, - "fraudMarkingInformation": { - "reason": "suspected" - }, - "healthCareInformation": { - "amountDetails": { - "amountType": "healthcare-transit", - "amount": "100.00" - } - }, - "merchantDefinedInformation": [ - { - "key": "abc", - "value": "xyz" - } - ], - "merchantInformation": { - "merchantDescriptor": { - "name": "ng_paymentech" - } - }, - "orderInformation": { - "billTo": { - "firstName": "JAMES", - "lastName": "DOUGH", - "middleName": "ROY", - "nameSuffix": "Mr", - "address1": "600 Morgan Falls Road", - "address2": "Room 2-2123", - "locality": "Atlanta", - "administrativeArea": "GA", - "postalCode": "30350", - "company": "cybersource", - "email": "jdough@cybersource.com", - "country": "US", - "title": "Manager", - "phoneNumber": "6509656111" - }, - "shipTo": { - "firstName": "Test", - "lastName": "TSS", - "address1": "201S.DivisionSt._1", - "address2": "Suite500", - "locality": "Austin", - "administrativeArea": "TX", - "postalCode": "78750", - "company": "cybs", - "country": "US", - "phoneNumber": "5120000000" - }, - "lineItems": [ - { - "productCode": "code2", - "productName": "name2", - "productSku": "KKY", - "taxAmount": "3.00", - "quantity": 2, - "unitPrice": "5.00", - "fulfillmentType": "abc" - } - ], - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD", - "taxAmount": "5", - "authorizedAmount": "100.00", - "settlementAmount": "97.50", - "settlementCurrency": "USD", - "surcharge": "1.11" - }, - "shippingDetails": { - "giftWrap": "none", - "shippingMethod": "xyz" - }, - "invoiceDetails": { - "salesSlipNumber": "12345" - } - }, - "paymentInformation": { - "paymentType": { - "name": "paymentProcessor1234", - "type": "Credit", - "method": "method name" - }, - "customer": { - "customerId": "123" - }, - "id": "1C56E3115482033FEA539399130A4BC2", - "card": { - "suffix": "1111", - "prefix": "123", - "expirationMonth": "10", - "expirationYear": "2017", - "startMonth": "11", - "startYear": "2011", - "issueNumber": "1234", - "type": "001", - "accountEncoderId": "12", - "useAs": "overidepaymentmethod" - }, - "invoice": { - "number": "BOLETONUM34567890123barcode12345678901231234567890", - "barcodeNumber": "barcode1234567890123barcode12345678901231234567890", - "expirationDate": "2018-01-07T07:59:59.999Z" - }, - "bank": { - "routingNumber": "routing123", - "branchCode": "branchcode1234567", - "swiftCode": "bankswift1", - "bankCode": "bankcode1212345", - "iban": "SUFF", - "account": { - "suffix": "1111", - "prefix": "123456", - "checkNumber": "123456", - "type": "check", - "name": "BankAccountName123456789012345", - "checkDigit": "CD", - "encoderId": "AID" - }, - "mandate": { - "referenceNumber": "mandaterefnum1234567", - "recurringType": "direct1234", - "id": "mandateId1" - } - }, - "accountFeatures": { - "balanceAmount": "3.00", - "previousBalanceAmount": "2.00", - "currency": "usd" - }, - "paymentInstrument": { - "id": "1C56E3115482033FEA539399130A4BC2" - }, - "instrumentIdentifier": { - "id": "1C56E3115482033FEA539399130A4BC2" - }, - "shippingAddress": { - "id": "1C56E3115482033FEA539399130A4BC2" - } - }, - "paymentInsightsInformation": { - "responseInsights": { - "category": "ISSUER_CANNOT_APPROVE_WITH_THESE_DETAILS", - "categoryCode": "03" - } - }, - "processingInformation": { - "industryDataType": "healthcare_transit", - "paymentSolution": "Visa", - "commerceIndicator": "7", - "businessApplicationId": "12345", - "authorizationOptions": { - "authType": "O", - "initiator": { - "type": "Y", - "credentialStoredOnFile": "Y", - "storedCredentialUsed": "Y", - "merchantInitiatedTransaction": { - "reason": "1", - "previousTransactionId": "networktransactionid67890", - "originalAuthorizedAmount": "100.00" - } - } - }, - "bankTransferOptions": { - "secCode": "web" - }, - "japanPaymentOptions": { - "paymentMethod": "1", - "terminalId": "1234567890123", - "businessName": "shop_local", - "businessNameKatakana": "shop_katakana" - } - }, - "processorInformation": { - "processor": { - "name": "paymentProcessor1234" - }, - "multiProcessorRouting": [ - { - "name": "paymentProcessor0123", - "responseCode": "responsecode01234567", - "reasonCode": "233", - "sequence": "1" - }, - { - "name": "paymentProcessor1234", - "responseCode": "responsecode12345678", - "reason": "100", - "sequence": "2" - } - ], - "transactionId": "processortransactionid123", - "networkTransactionId": "networktransactionid67890", - "responseId": "1212", - "approvalCode": "authcode1234567", - "retrievalReferenceNumber": "122908889379", - "responseCode": "responsecode12345678", - "avs": { - "code": "ARM", - "codeRaw": "avsResults" - }, - "cardVerification": { - "resultCode": "Y" - }, - "achVerification": { - "resultCode": "rspcodmap", - "resultCodeRaw": "responsecode12345678" - }, - "electronicVerificationResults": { - "email": "email@email.com", - "emailRaw": "emailRaw12", - "name": "ename", - "nameRaw": "enameRaw12", - "phoneNumber": "01179", - "phoneNumberRaw": "9925551608", - "street": "123 street", - "streetRaw": "SteertRaw12", - "postalCode": "78717", - "postalCodeRaw": "1166678717" - }, - "systemTraceAuditNumber": "123456", - "responseCodeSource": "0", - "paymentAccountReferenceNumber": "abc4545345dfsf2342342wfa" - }, - "pointOfSaleInformation": { - "terminalId": "1", - "entryMode": "posentrymode1234512", - "terminalCapability": "integer", - "emv": { - "tags": "5F25" - } - }, - "riskInformation": { - "profile": { - "name": "abc", - "decision": "xyz" - }, - "rules": [ - { - "name": "abc2", - "decision": "xyz2" - } - ], - "passiveProfile": { - "name": "abc3", - "decision": "xyz3" - }, - "passiveRules": [ - { - "name": "abc4", - "decision": "xyz4" - } - ], - "localTime": "2018-07-31T17:26:14Z", - "score": { - "factorCodes": [ - "AB" - ], - "result": 10 - } - }, - "senderInformation": { - "referenceNumber": "senderRefNumber1" - }, - "tokenInformation": { - "customer": { - "id": "1C56E3115482033FEA539399130A4BC2" - }, - "paymentInstrument": { - "id": "1C56E3115482033FEA539399130A4BC2" - }, - "instrumentIdentifier": { - "id": "1C56E3115482033FEA539399130A4BC2" - }, - "shippingAddress": { - "id": "1C56E3115482033FEA539399130A4BC2" - } - }, - "_links": { - "self": { - "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601009", - "method": "GET" - }, - "relatedTransactions": [ - { - "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601010", - "method": "GET" - }, - { - "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601011", - "method": "GET" - } - ] - } - } - } - }, - "404": { - "description": "The specified resource not found in the system." - }, - "500": { - "description": "Unexpected server error" - } - } - } - }, - "/tss/v2/searches": { - "post": { - "summary": "Create a Search Request", - "description": "Create a search request.\n", - "tags": [ - "SearchTransactions" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "operationId": "createSearch", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Search", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api.html" - }, - "parameters": [ - { - "name": "createSearchRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "save": { - "type": "boolean", - "description": "Indicates whether or not you want to save this search request for future use. The options are:\n\n* `true`\n* `false` (default value)\n\nIf set to `true`, this field returns\n`searchID` in the response. You can use this value to retrieve the details of the saved search.\n" - }, - "name": { - "type": "string", - "description": "Name of this search. When `save` is set to `true`, this search is saved with this name.\n" - }, - "timezone": { - "type": "string", - "description": "Merchant\u2019s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`\n" - }, - "query": { - "type": "string", - "description": "String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.\n" - }, - "offset": { - "type": "integer", - "description": "Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset.\n\nFor example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this:\n\n`offset=0`\n`offset=5`\n`offset=10`\n\n**Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.\n" - }, - "limit": { - "type": "integer", - "description": "Controls the maximum number of items that may be returned for a single request. The default is 20, the maximum is 2000.\n" - }, - "sort": { - "type": "string", - "description": "A comma separated list of the following form:\n\n`submitTimeUtc:desc`\n" - } - }, - "example": { - "save": "false", - "name": "Search By Code", - "timezone": "America/Chicago", - "query": "clientReferenceInformation.code:123456 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", - "offset": 0, - "limit": 100, - "sort": "id:asc, submitTimeUtc:asc" - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "type": "object", - "title": "tssV2TransactionsPost201Response", - "properties": { - "searchId": { - "type": "string", - "maxLength": 60, - "description": "An unique identification number assigned by CyberSource to identify each Search request." - }, - "save": { - "type": "boolean", - "description": "Indicates whether or not you want to save this search request for future use. The options are:\n\n* `true`\n* `false` (default value)\n\nIf set to `true`, this field returns\n`searchID` in the response. You can use this value to retrieve the details of the saved search.\n" - }, - "name": { - "type": "string", - "description": "Name of this search. When `save` is set to `true`, this search is saved with this name.\n" - }, - "timezone": { - "type": "string", - "description": "Merchant\u2019s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`\n" - }, - "query": { - "type": "string", - "description": "String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.\n" - }, - "offset": { - "type": "integer", - "description": "Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset.\n\nFor example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this:\n\n`offset=0`\n`offset=5`\n`offset=10`\n\n**Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.\n" - }, - "limit": { - "type": "integer", - "description": "Controls the maximum number of items that may be returned for a single request. The default is 20, the maximum is 2000.\n" - }, - "sort": { - "type": "string", - "description": "A comma separated list of the following form:\n\n`submitTimeUtc:desc`\n" - }, - "count": { - "type": "integer", - "description": "Results for this page, this could be below the limit." - }, - "totalCount": { - "type": "integer", - "description": "Total number of results." - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "_embedded": { - "type": "object", - "properties": { - "transactionSummaries": { - "type": "array", - "description": "transaction search summary", - "items": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "merchantId": { - "type": "string", - "description": "Your CyberSource merchant ID." - }, - "applicationInformation": { - "type": "object", - "properties": { - "reasonCode": { - "type": "string", - "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" - }, - "rCode": { - "type": "string", - "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n" - }, - "applications": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.\n" - }, - "reasonCode": { - "type": "string", - "description": "3-digit reason code that indicates why the customer profile payment succeeded or failed." - }, - "rCode": { - "type": "string", - "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n" - }, - "reconciliationId": { - "type": "string", - "description": "Reference number that you use to reconcile your CyberSource reports with your processor reports.\n" - }, - "rMessage": { - "type": "string", - "description": "Message that explains the reply flag for the application.\n" - }, - "returnCode": { - "type": "integer", - "description": "The description for this field is not available." - } - } - } - }, - "returnCode": { - "type": "integer", - "description": "The description for this field is not available." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "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.\n" - }, - "partner": { - "type": "object", - "properties": { - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "xid": { - "type": "string", - "maxLength": 40, - "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "transactionId": { - "type": "string", - "description": "Payer auth Transaction identifier." - }, - "eciRaw": { - "type": "string", - "maxLength": 2, - "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - } - } - }, - "fraudMarkingInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.\n- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.\n- suspected: You believe that you will probably receive a chargeback for the transaction.\n- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.\n" - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "resellerId": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the payment type used in this payment transaction. Example: credit card, check" - }, - "method": { - "type": "string", - "description": "Indicates the payment method used in this payment transaction." - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "prefix": { - "type": "string", - "maxLength": 6, - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the customer\u2019s payment account number.\n" - }, - "prefix": { - "type": "string", - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" - } - } - } - } - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "businessApplicationId": { - "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "processor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\n" - } - } - }, - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - }, - "terminalSerialNumber": { - "type": "string", - "maxLength": 32, - "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "deviceId": { - "type": "string", - "description": "Value created by the client software that uniquely identifies the POS device.\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to\nthe CyberSource reporting functionality.\n\nThis field is supported only for authorizations and credits on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\nString (32)\n" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - } - } - } - } - }, - "riskInformation": { - "type": "object", - "properties": { - "providers": { - "type": "object", - "properties": { - "fingerprint": { - "type": "object", - "properties": { - "true_ipaddress": { - "type": "string", - "maxLength": 255, - "description": "Customer\u2019s true IP address detected by the application.\n\nFor details, see the `true_ipaddress` field description in _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" - }, - "hash": { - "type": "string", - "maxLength": 255, - "description": "The unique identifier of the device that is returned in the `riskInformation.providers.fingerprint.device_fingerprint_hash` API reply field.\n\nNOTE: For details about the value of this field, see the `decision_provider_#_field_#_value` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n\nFor more details about this field, see the `device_fingerprint_hash` field description in the _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" - }, - "smartId": { - "type": "string", - "maxLength": 255, - "description": "The device identifier generated from attributes collected during profiling. Returned by a 3rd party when you use device fingerprinting.\n\nFor details, see the `device_fingerprint_smart_id` field description in [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\n" - } - } - } - } - } - } - }, - "_links": { - "type": "object", - "properties": { - "transactionDetail": { - "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." - } - } - } - } - } - } - } - } - } - }, - "_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." - } - } - } - } - } - }, - "example": { - "searchId": "87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", - "save": "false", - "name": "Search By Code", - "timezone": "America/Chicago", - "query": "clientReferenceInformation.code:12345 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", - "offset": 0, - "limit": 2000, - "sort": "id:asc, submitTimeUtc:asc", - "count": 22, - "totalCount": 22, - "status": "status", - "submitTimeUtc": "2018-09-18T16:59:28Z", - "_embedded": { - "transactionSummaries": [ - { - "id": "5217848115816817001541", - "submitTimeUtc": "2018-03-23T06:00:11Z", - "merchantId": "sandeep_wf", - "applicationInformation": { - "status": "TRANSMITTED", - "reasonCode": "123", - "rCode": "1", - "rFlag": "SOK", - "returnCode": 1040000, - "applications": [ - { - "name": "ics_service_fee_calculate", - "status": "TRANSMITTED", - "reasonCode": "123", - "rCode": "1", - "rFlag": "SOK", - "reconciliationId": "55557", - "rMessage": "Request was processed successfully", - "returnCode": 1040000 - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "123456" - }, - "clientReferenceInformation": { - "code": "12345", - "applicationName": "Service Fee Request", - "applicationUser": "sandeep_wf", - "partner": { - "solutionId": "89012345" - } - }, - "consumerAuthenticationInformation": { - "eciRaw": "02", - "xid": "12345678", - "transactionId": "00152259513040478521" - }, - "deviceInformation": { - "ipAddress": "1.10.10.10" - }, - "fraudMarkingInformation": { - "reason": "fraud txn" - }, - "merchantDefinedInformation": [ - { - "key": "abc", - "value": "xyz" - } - ], - "merchantInformation": { - "resellerId": "wfbmcp" - }, - "orderInformation": { - "billTo": { - "firstName": "Test", - "lastName": "TSS", - "address1": "201S.DivisionSt._1", - "email": "null@cybersource.com", - "country": "US", - "phoneNumber": "5120000000" - }, - "shipTo": { - "firstName": "Test", - "lastName": "TSS", - "address1": "201S.DivisionSt._1", - "country": "US", - "phoneNumber": "5120000000" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "paymentType": { - "name": "CARD", - "method": { - "name": "method name" - } - }, - "customer": { - "customerId": "12345" - }, - "card": { - "suffix": "1111", - "prefix": "123456", - "type": "001" - }, - "bank": { - "account": { - "suffix": "1111", - "prefix": "123456" - } - } - }, - "processingInformation": { - "commerceIndicator": "7", - "paymentSolution": "xyz", - "businessApplicationId": "12345" - }, - "processorInformation": { - "processor": { - "name": "FirstData" - }, - "approvalCode": "authcode1234567" - }, - "pointOfSaleInformation": { - "terminalId": "1", - "terminalSerialNumber": "123111123", - "deviceId": "asfaf12312313", - "partner": { - "originalTransactionId": "131231414414" - } - }, - "riskInformation": { - "providers": { - "fingerprint": { - "true_ipaddress": "1.101.102.112", - "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", - "smart_id": "23442fdadfa" - } - } - }, - "_links": { - "transactionDetail": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", - "method": "GET" - } - } - } - ] - }, - "_links": { - "self": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", - "method": "GET" - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "tssV2TransactionsPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "tssV2TransactionsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create a search request", - "value": { - "save": "false", - "name": "MRN", - "timezone": "America/Chicago", - "query": "clientReferenceInformation.code:TC50171_3 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", - "offset": 0, - "limit": 100, - "sort": "id:asc,submitTimeUtc:asc" - } - } - } - } - }, - "/tss/v2/searches/{searchId}": { - "get": { - "summary": "Get Search Results", - "description": "Include the Search ID in the GET request to retrieve the search results.", - "tags": [ - "SearchTransactions" - ], - "produces": [ - "*/*" - ], - "operationId": "getSearch", - "x-devcenter-metaData": { - "categoryTag": "Transaction_Search", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api.html" - }, - "parameters": [ - { - "name": "searchId", - "in": "path", - "description": "Search ID.", - "required": true, - "type": "string" - } - ], - "x-depends": { - "example": { - "path": "/tss/v2/searches", - "verb": "post", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "searchId", - "destinationField": "searchId", - "fieldTypeInDestination": "path" - } - ] - }, - "responses": { - "200": { - "description": "Successful response.", - "schema": { - "type": "object", - "title": "tssV2TransactionsPost201Response", - "properties": { - "searchId": { - "type": "string", - "maxLength": 60, - "description": "An unique identification number assigned by CyberSource to identify each Search request." - }, - "save": { - "type": "boolean", - "description": "Indicates whether or not you want to save this search request for future use. The options are:\n\n* `true`\n* `false` (default value)\n\nIf set to `true`, this field returns\n`searchID` in the response. You can use this value to retrieve the details of the saved search.\n" - }, - "name": { - "type": "string", - "description": "Name of this search. When `save` is set to `true`, this search is saved with this name.\n" - }, - "timezone": { - "type": "string", - "description": "Merchant\u2019s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`\n" - }, - "query": { - "type": "string", - "description": "String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.\n" - }, - "offset": { - "type": "integer", - "description": "Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset.\n\nFor example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this:\n\n`offset=0`\n`offset=5`\n`offset=10`\n\n**Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.\n" - }, - "limit": { - "type": "integer", - "description": "Controls the maximum number of items that may be returned for a single request. The default is 20, the maximum is 2000.\n" - }, - "sort": { - "type": "string", - "description": "A comma separated list of the following form:\n\n`submitTimeUtc:desc`\n" - }, - "count": { - "type": "integer", - "description": "Results for this page, this could be below the limit." - }, - "totalCount": { - "type": "integer", - "description": "Total number of results." - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction." - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "_embedded": { - "type": "object", - "properties": { - "transactionSummaries": { - "type": "array", - "description": "transaction search summary", - "items": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "merchantId": { - "type": "string", - "description": "Your CyberSource merchant ID." - }, - "applicationInformation": { - "type": "object", - "properties": { - "reasonCode": { - "type": "string", - "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" - }, - "rCode": { - "type": "string", - "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n" - }, - "applications": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.\n" - }, - "reasonCode": { - "type": "string", - "description": "3-digit reason code that indicates why the customer profile payment succeeded or failed." - }, - "rCode": { - "type": "string", - "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" - }, - "rFlag": { - "type": "string", - "description": "One-word description of the result of the application.\n" - }, - "reconciliationId": { - "type": "string", - "description": "Reference number that you use to reconcile your CyberSource reports with your processor reports.\n" - }, - "rMessage": { - "type": "string", - "description": "Message that explains the reply flag for the application.\n" - }, - "returnCode": { - "type": "integer", - "description": "The description for this field is not available." - } - } - } - }, - "returnCode": { - "type": "integer", - "description": "The description for this field is not available." - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "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.\n" - }, - "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.\n" - }, - "partner": { - "type": "object", - "properties": { - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "consumerAuthenticationInformation": { - "type": "object", - "properties": { - "xid": { - "type": "string", - "maxLength": 40, - "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "transactionId": { - "type": "string", - "description": "Payer auth Transaction identifier." - }, - "eciRaw": { - "type": "string", - "maxLength": 2, - "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "deviceInformation": { - "type": "object", - "properties": { - "ipAddress": { - "type": "string", - "maxLength": 45, - "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" - } - } - }, - "fraudMarkingInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.\n- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.\n- suspected: You believe that you will probably receive a chargeback for the transaction.\n- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.\n" - } - } - }, - "merchantDefinedInformation": { - "type": "array", - "description": "The object containing the custom data that the merchant defines.\n", - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "maxLength": 50, - "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - }, - "value": { - "type": "string", - "maxLength": 255, - "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "resellerId": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "billTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "firstName": { - "type": "string", - "maxLength": 60, - "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "lastName": { - "type": "string", - "maxLength": 60, - "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "country": { - "type": "string", - "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "phoneNumber": { - "type": "string", - "maxLength": 15, - "description": "Phone number associated with the shipping address." - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - }, - "paymentInformation": { - "type": "object", - "properties": { - "paymentType": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Indicates the payment type used in this payment transaction. Example: credit card, check" - }, - "method": { - "type": "string", - "description": "Indicates the payment method used in this payment transaction." - } - } - }, - "customer": { - "type": "object", - "properties": { - "customerId": { - "type": "string", - "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" - } - } - }, - "card": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "prefix": { - "type": "string", - "maxLength": 6, - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" - }, - "type": { - "type": "string", - "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" - } - } - }, - "bank": { - "type": "object", - "properties": { - "account": { - "type": "object", - "properties": { - "suffix": { - "type": "string", - "description": "Last four digits of the customer\u2019s payment account number.\n" - }, - "prefix": { - "type": "string", - "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" - } - } - } - } - } - } - }, - "processingInformation": { - "type": "object", - "properties": { - "paymentSolution": { - "type": "string", - "maxLength": 12, - "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" - }, - "businessApplicationId": { - "type": "string", - "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" - }, - "commerceIndicator": { - "type": "string", - "maxLength": 20, - "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" - } - } - }, - "processorInformation": { - "type": "object", - "properties": { - "processor": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 30, - "description": "Name of the Processor.\n" - } - } - }, - "approvalCode": { - "type": "string", - "maxLength": 6, - "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" - } - } - }, - "pointOfSaleInformation": { - "type": "object", - "properties": { - "terminalId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" - }, - "terminalSerialNumber": { - "type": "string", - "maxLength": 32, - "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" - }, - "deviceId": { - "type": "string", - "description": "Value created by the client software that uniquely identifies the POS device.\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to\nthe CyberSource reporting functionality.\n\nThis field is supported only for authorizations and credits on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\nString (32)\n" - }, - "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" - } - } - } - } - }, - "riskInformation": { - "type": "object", - "properties": { - "providers": { - "type": "object", - "properties": { - "fingerprint": { - "type": "object", - "properties": { - "true_ipaddress": { - "type": "string", - "maxLength": 255, - "description": "Customer\u2019s true IP address detected by the application.\n\nFor details, see the `true_ipaddress` field description in _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" - }, - "hash": { - "type": "string", - "maxLength": 255, - "description": "The unique identifier of the device that is returned in the `riskInformation.providers.fingerprint.device_fingerprint_hash` API reply field.\n\nNOTE: For details about the value of this field, see the `decision_provider_#_field_#_value` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n\nFor more details about this field, see the `device_fingerprint_hash` field description in the _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" - }, - "smartId": { - "type": "string", - "maxLength": 255, - "description": "The device identifier generated from attributes collected during profiling. Returned by a 3rd party when you use device fingerprinting.\n\nFor details, see the `device_fingerprint_smart_id` field description in [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\n" - } - } - } - } - } - } - }, - "_links": { - "type": "object", - "properties": { - "transactionDetail": { - "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." - } - } - } - } - } - } - } - } - } - }, - "_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." - } - } - } - } - } - }, - "example": { - "searchId": "87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", - "save": "false", - "name": "Search By Code", - "timezone": "America/Chicago", - "query": "clientReferenceInformation.code:12345 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", - "offset": 0, - "limit": 2000, - "sort": "id:asc, submitTimeUtc:asc", - "count": 22, - "totalCount": 22, - "status": "status", - "submitTimeUtc": "2018-09-18T16:59:28Z", - "_embedded": { - "transactionSummaries": [ - { - "id": "5217848115816817001541", - "submitTimeUtc": "2018-03-23T06:00:11Z", - "merchantId": "sandeep_wf", - "applicationInformation": { - "status": "TRANSMITTED", - "reasonCode": "123", - "rCode": "1", - "rFlag": "SOK", - "returnCode": 1040000, - "applications": [ - { - "name": "ics_service_fee_calculate", - "status": "TRANSMITTED", - "reasonCode": "123", - "rCode": "1", - "rFlag": "SOK", - "reconciliationId": "55557", - "rMessage": "Request was processed successfully", - "returnCode": 1040000 - } - ] - }, - "buyerInformation": { - "merchantCustomerId": "123456" - }, - "clientReferenceInformation": { - "code": "12345", - "applicationName": "Service Fee Request", - "applicationUser": "sandeep_wf", - "partner": { - "solutionId": "89012345" - } - }, - "consumerAuthenticationInformation": { - "eciRaw": "02", - "xid": "12345678", - "transactionId": "00152259513040478521" - }, - "deviceInformation": { - "ipAddress": "1.10.10.10" - }, - "fraudMarkingInformation": { - "reason": "fraud txn" - }, - "merchantDefinedInformation": [ - { - "key": "abc", - "value": "xyz" - } - ], - "merchantInformation": { - "resellerId": "wfbmcp" - }, - "orderInformation": { - "billTo": { - "firstName": "Test", - "lastName": "TSS", - "address1": "201S.DivisionSt._1", - "email": "null@cybersource.com", - "country": "US", - "phoneNumber": "5120000000" - }, - "shipTo": { - "firstName": "Test", - "lastName": "TSS", - "address1": "201S.DivisionSt._1", - "country": "US", - "phoneNumber": "5120000000" - }, - "amountDetails": { - "totalAmount": "100.00", - "currency": "USD" - } - }, - "paymentInformation": { - "paymentType": { - "name": "CARD", - "method": { - "name": "method name" - } - }, - "customer": { - "customerId": "12345" - }, - "card": { - "suffix": "1111", - "prefix": "123456", - "type": "001" - }, - "bank": { - "account": { - "suffix": "1111", - "prefix": "123456" - } - } - }, - "processingInformation": { - "commerceIndicator": "7", - "paymentSolution": "xyz", - "businessApplicationId": "12345" - }, - "processorInformation": { - "processor": { - "name": "FirstData" - }, - "approvalCode": "authcode1234567" - }, - "pointOfSaleInformation": { - "terminalId": "1", - "terminalSerialNumber": "123111123", - "deviceId": "asfaf12312313", - "partner": { - "originalTransactionId": "131231414414" - } - }, - "riskInformation": { - "providers": { - "fingerprint": { - "true_ipaddress": "1.101.102.112", - "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", - "smart_id": "23442fdadfa" - } - } - }, - "_links": { - "transactionDetail": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", - "method": "GET" - } - } - } - ] - }, - "_links": { - "self": { - "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", - "method": "GET" - } - } - } - } - }, - "404": { - "description": "The specified resource not found in the system." - }, - "500": { - "description": "Unexpected server error." - } - } - } - }, - "/reporting/v3/report-downloads": { - "get": { - "tags": [ - "Report Downloads" - ], - "summary": "Download a Report", - "description": "Download a report using the unique report name and date.\n", - "operationId": "downloadReport", - "x-streaming": true, - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "text/csv", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "reportName": "testrest_subcription_v2989", - "reportDate": "2018-09-30" - }, - "produces": [ - "application/xml", - "text/csv" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "reportDate", - "in": "query", - "description": "Valid date on which to download the report in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n yyyy-mm-dd\nFor reports that span multiple days, this value would be the end date of the report in the time zone of the report subscription.\nExample 1: If your report start date is 2020-03-06 and the end date is 2020-03-09, the reportDate passed in the query is 2020-03-09.\nExample 2: If your report runs from midnight to midnight on 2020-03-09, the reportDate passed in the query is 2020-03-10\n", - "required": true, - "type": "string", - "format": "date" - }, - { - "name": "reportName", - "in": "query", - "description": "Name of the report to download", - "type": "string", - "required": true - } - ], - "responses": { - "200": { - "description": "OK" - }, - "400": { - "description": "Invalid Request", - "schema": { - "title": "reportingv3ReportDownloadsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "No Reports Found" - } - } - } - }, - "/reporting/v3/reports": { - "get": { - "tags": [ - "Reports" - ], - "summary": "Retrieve Available Reports", - "description": "Retrieve a list of the available reports to which you are subscribed. This will also give you the reportId value, which you can also use to download a report.\n", - "operationId": "searchReports", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "startTime": "2019-10-01T00:00:00Z", - "endTime": "2019-10-30T23:59:59Z", - "timeQueryType": "executedTime", - "reportMimeType": "application/xml" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "timeQueryType", - "in": "query", - "description": "Specify time you would like to search\n\nValid values:\n- reportTimeFrame\n- executedTime\n", - "required": true, - "type": "string" - }, - { - "name": "reportMimeType", - "in": "query", - "description": "Valid Report Format\n\nValid values:\n- application/xml\n- text/csv\n", - "required": false, - "type": "string" - }, - { - "name": "reportFrequency", - "in": "query", - "description": "Valid Report Frequency\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- USER_DEFINED\n- ADHOC\n", - "required": false, - "type": "string" - }, - { - "name": "reportName", - "in": "query", - "description": "Valid Report Name", - "required": false, - "type": "string" - }, - { - "name": "reportDefinitionId", - "in": "query", - "description": "Valid Report Definition Id", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "name": "reportStatus", - "in": "query", - "description": "Valid Report Status\n\nValid values:\n- COMPLETED\n- PENDING\n- QUEUED\n- RUNNING\n- ERROR\n- NO_DATA\n", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "title": "reportingV3ReportsGet200Response", - "type": "object", - "properties": { - "reportSearchResults": { - "type": "array", - "items": { - "type": "object", - "properties": { - "_link": { - "type": "object", - "properties": { - "reportDownload": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "/reporting/v3/report-downloads?reportDate=2017-10-02&reportName=MyTransactionRequestDetailReport&reportTime=10:00:00+05:00" - }, - "method": { - "type": "string", - "example": "GET" - } - } - } - } - }, - "reportDefinitionId": { - "type": "string", - "description": "Unique Report Identifier of each report type", - "example": "210" - }, - "reportName": { - "type": "string", - "description": "Name of the report specified by merchant while creating the report", - "example": "MyTransactionRequestDetailReport" - }, - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Format of the report to get generated\nValid Values:\n- application/xml\n- text/csv\n" - }, - "reportFrequency": { - "type": "string", - "example": "DAILY", - "description": "Frequency of the report to get generated\nValid Values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- ADHOC\n" - }, - "status": { - "type": "string", - "description": "Status of the report\nValid Values:\n- COMPLETED\n- PENDING\n- QUEUED\n- RUNNING\n- ERROR\n- NO_DATA\n" - }, - "reportStartTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:00:00+05:00", - "description": "Specifies the report start time in ISO 8601 format" - }, - "reportEndTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-02T10:00:00+05:00", - "description": "Specifies the report end time in ISO 8601 format" - }, - "timezone": { - "type": "string", - "example": "America/Chicago", - "description": "Time Zone" - }, - "reportId": { - "type": "string", - "example": "6d9cb5b6-0e97-2d03-e053-7cb8d30af52e", - "description": "Unique identifier generated for every reports" - }, - "organizationId": { - "type": "string", - "example": "Test_MerchantId", - "description": "CyberSource Merchant Id" - }, - "queuedTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-03T10:00:00+05:00", - "description": "Specifies the time of the report in queued in ISO 8601 format" - }, - "reportGeneratingTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-03T10:00:00+05:00", - "description": "Specifies the time of the report started to generate in ISO 8601 format" - }, - "reportCompletedTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-03T10:10:00+05:00", - "description": "Specifies the time of the report completed the generation in ISO 8601 format" - }, - "subscriptionType": { - "type": "string", - "example": "CUSTOM", - "description": "Specifies whether the subscription created is either Custom, Standard or Classic\n" - }, - "groupId": { - "type": "string", - "example": "12345", - "description": "Id for selected group." - } - }, - "description": "Report Search Result Bean" - } - } - } - } - }, - "400": { - "description": "Invalid Request", - "schema": { - "title": "reportingV3ReportsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "No Reports Found" - } - } - }, - "post": { - "tags": [ - "Reports" - ], - "summary": "Create Adhoc Report", - "description": "Create a one-time report. You must specify the type of report in reportDefinitionName. For a list of values for reportDefinitionName, see the [Reporting Developer Guide](https://www.cybersource.com/developers/documentation/reporting_and_reconciliation)\n", - "operationId": "createReport", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "in": "body", - "name": "createAdhocReportRequest", - "description": "Report subscription request payload", - "required": true, - "schema": { - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Valid CyberSource Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "example": "Test_Merchatnt_id" - }, - "reportDefinitionName": { - "type": "string", - "minLength": 1, - "maxLength": 80, - "pattern": "[a-zA-Z0-9-]+", - "example": "TransactionRequestClass" - }, - "reportFields": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of fields which needs to get included in a report", - "example": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID" - ] - }, - "reportMimeType": { - "type": "string", - "description": "'Format of the report'\n \nValid values:\n- application/xml\n- text/csv\n", - "example": "application/xml" - }, - "reportName": { - "type": "string", - "minLength": 1, - "maxLength": 128, - "pattern": "[a-zA-Z0-9-_ ]+", - "description": "Name of the report", - "example": "My Transaction Request report" - }, - "timezone": { - "type": "string", - "description": "Timezone of the report", - "example": "America/Chicago" - }, - "reportStartTime": { - "type": "string", - "format": "date-time", - "description": "Start time of the report", - "example": "2017-10-01T10:10:10+05:00" - }, - "reportEndTime": { - "type": "string", - "format": "date-time", - "description": "End time of the report", - "example": "2017-10-02T10:10:10+05:00" - }, - "reportFilters": { - "type": "object", - "properties": { - "Application.Name": { - "type": "array", - "items": { - "type": "string", - "description": "Specifies filter criteria by list of application names separated by comma", - "example": "ics_auth" - } - }, - "firstName": { - "type": "array", - "items": { - "type": "string", - "description": "Specifies filter criteria by list of first names separated by comma", - "example": "Johny" - } - }, - "lastName": { - "type": "array", - "items": { - "type": "string", - "description": "Specifies filter criteria by list of last names separated by comma", - "example": "Danny" - } - }, - "email": { - "type": "array", - "items": { - "type": "string", - "description": "Specifies filter criteria by list of email addresses separated by comma", - "example": "example@visa.com" - } - } - } - }, - "reportPreferences": { - "type": "object", - "description": "Report Preferences", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - }, - "groupName": { - "type": "string", - "pattern": "[0-9]*", - "description": "Specifies the group name", - "example": "myGroup" - } - } - } - } - ], - "responses": { - "201": { - "description": "Created" - }, - "304": { - "description": "Not Modified" - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ReportsPost400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - } - }, - "x-example": { - "example0": { - "summary": "Create Adhoc Report", - "value": { - "reportDefinitionName": "TransactionRequestClass", - "reportFields": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID", - "AFSFields.IPAddress", - "AFSFields.IPCountry", - "AFSFields.IPRoutingMethod", - "AFSFields.IPState", - "Application.Name", - "BankInfo.Address", - "BankInfo.BranchCode", - "BankInfo.City", - "BankInfo.Country", - "BankInfo.Name", - "BankInfo.SwiftCode", - "BillTo.Address1", - "BillTo.Address2", - "BillTo.City", - "BillTo.CompanyName", - "BillTo.CompanyTaxID", - "BillTo.Country", - "BillTo.Email", - "BillTo.FirstName", - "BillTo.LastName", - "BillTo.MiddleName", - "BillTo.NameSuffix", - "BillTo.PersonalID", - "BillTo.Phone", - "BillTo.State", - "BillTo.Title", - "BillTo.Zip", - "ChargebackAndRetrieval.AdjustmentAmount", - "ChargebackAndRetrieval.AdjustmentCurrency", - "ChargebackAndRetrieval.ARN", - "ChargebackAndRetrieval.CaseIdentifier", - "ChargebackAndRetrieval.CaseNumber", - "ChargebackAndRetrieval.CaseTime", - "ChargebackAndRetrieval.CaseType", - "ChargebackAndRetrieval.ChargebackAmount", - "ChargebackAndRetrieval.ChargebackCurrency", - "ChargebackAndRetrieval.ChargebackMessage", - "ChargebackAndRetrieval.ChargebackReasonCode", - "ChargebackAndRetrieval.ChargebackReasonCodeDescription", - "ChargebackAndRetrieval.ChargebackTime", - "ChargebackAndRetrieval.DocumentIndicator", - "ChargebackAndRetrieval.FeeAmount", - "ChargebackAndRetrieval.FeeCurrency", - "ChargebackAndRetrieval.FinancialImpact", - "ChargebackAndRetrieval.FinancialImpactType", - "ChargebackAndRetrieval.MerchantCategoryCode", - "ChargebackAndRetrieval.PartialIndicator", - "ChargebackAndRetrieval.ResolutionTime", - "ChargebackAndRetrieval.ResolvedToIndicator", - "ChargebackAndRetrieval.RespondByDate", - "ChargebackAndRetrieval.TransactionType", - "Check.AccountEncoderID", - "Check.BankTransitNumber", - "Check.SecCode", - "CustomerFields.BillingAddress1", - "CustomerFields.BillingAddress2", - "CustomerFields.BillingCity", - "CustomerFields.BillingCompanyName", - "CustomerFields.BillingCountry", - "CustomerFields.BillingEmail", - "CustomerFields.BillingFirstName", - "CustomerFields.BillingLastName", - "CustomerFields.BillingPhone", - "CustomerFields.BillingPostalCode", - "CustomerFields.BillingState", - "CustomerFields.CustomerID", - "CustomerFields.CustomerUserName", - "CustomerFields.PersonalId(CPF/CNPJ)", - "CustomerFields.ShippingAddress1", - "CustomerFields.ShippingAddress2", - "CustomerFields.ShippingCity", - "CustomerFields.ShippingCompanyName", - "CustomerFields.ShippingCountry", - "CustomerFields.ShippingFirstName", - "CustomerFields.ShippingLastName", - "CustomerFields.ShippingPhone", - "CustomerFields.ShippingPostalCode", - "CustomerFields.ShippingState", - "DecisionManagerEvents.EventPolicy", - "DecisionManagerEvents.TypeofEvent", - "Device.DeviceID", - "DeviceFingerprintFields.abcd", - "DeviceFingerprintFields.BrowserLanguage", - "DeviceFingerprintFields.DeviceLatitude", - "DeviceFingerprintFields.DeviceLongitude", - "DeviceFingerprintFields.displayNameFinalCheck", - "DeviceFingerprintFields.DMESignOffFieldEdit", - "DeviceFingerprintFields.Fingerprint/DeviceFingerprint", - "DeviceFingerprintFields.FlashEnabled", - "DeviceFingerprintFields.FlashOperatingSystem", - "DeviceFingerprintFields.FlashVersion", - "DeviceFingerprintFields.GPSAccuracy", - "DeviceFingerprintFields.ImagesEnabled", - "DeviceFingerprintFields.Jailbreak/RootPrivileges", - "DeviceFingerprintFields.JavaScriptEnabled", - "DeviceFingerprintFields.ProfiledURL", - "DeviceFingerprintFields.ProxyIPAddress", - "DeviceFingerprintFields.ProxyIPAddressActivities", - "DeviceFingerprintFields.ProxyServerType", - "DeviceFingerprintFields.ScreenResolution", - "DeviceFingerprintFields.SignOffFieldDMEEditNewOne", - "DeviceFingerprintFields.SmartID", - "DeviceFingerprintFields.SmartIDConfidenceLevel", - "DeviceFingerprintFields.TimeOnPage", - "DeviceFingerprintFields.TrueIPAddress", - "DeviceFingerprintFields.TrueIPAddressActivities", - "DeviceFingerprintFields.TrueIPAddressAttributes", - "DeviceFingerprintFields.txdea1", - "DeviceFingerprintFields.txdesv", - "EmailageFields.FraudType", - "EmailageFields.IP Postal", - "EmailageFields.IPCity", - "EmailageFields.IPCountry", - "EmailageFields.IPRegion", - "EmailageFields.SourceIndustry", - "Event.Amount", - "Event.CurrencyCode", - "Event.Event", - "Event.EventDate", - "Event.ProcessorMessage", - "Exception.Action", - "Exception.CYBSExceptionID", - "Exception.DccLookupStatus", - "Exception.ExceptionAmount", - "Exception.ExceptionAmountCurrency", - "Exception.ExceptionCategory", - "Exception.ExceptionDate", - "Exception.ExceptionDescription", - "Exception.ExceptionDeviceHardwareRevision", - "Exception.ExceptionDeviceID", - "Exception.ExceptionDeviceOS", - "Exception.ExceptionDeviceOSVersion", - "Exception.ExceptionDeviceTerminalID", - "Exception.ExceptionMessage", - "Exception.ExceptionReasonDescription", - "Exception.ExceptionStatus", - "Exception.ExceptionStatusCode", - "Exception.ExceptionType", - "Exception.FinancialStatus", - "Exception.LastActionDate", - "Exception.NextActionDate", - "Exception.OriginalTransactionSubmissionDate", - "Exception.PaymentNumber", - "Exception.ProcessorCaseID", - "Exception.ProcessorResponseCode", - "Exception.ReasonCode", - "Exception.RetryCount", - "Fee.AssessmentAmount", - "Fee.AssessmentCurrency", - "Fee.BillingCycle", - "Fee.BillingType", - "Fee.ClearedInterchangeLevel", - "Fee.DiscountAmount", - "Fee.DiscountCurrency", - "Fee.DiscountRate", - "Fee.DowngradeReasonCode", - "Fee.InterchangeAmount", - "Fee.InterchangeCurrency", - "Fee.InterchangeRate", - "Fee.PerItemFeeAmount", - "Fee.PerItemFeeCurrency", - "Fee.PricedInterchangeLevel", - "Fee.ServiceFeeAmount", - "Fee.ServiceFeeAmountCcy", - "Fee.ServiceFeeFixedAmount", - "Fee.ServiceFeeFixedAmountCcy", - "Fee.ServiceFeeRate", - "Fee.SettlementAmount", - "Fee.SettlementCurrency", - "Fee.SettlementTime", - "Fee.SettlementTimeZone", - "Fee.SourceDescriptor", - "Fee.TotalFeeAmount", - "Fee.TotalFeeCurrency", - "Funding.AdjustmentAmount", - "Funding.AdjustmentCurrency", - "Funding.AdjustmentDescription", - "Funding.AdjustmentType", - "FundTransfer.BankCheckDigit", - "FundTransfer.IbanIndicator", - "Invoice.BillingGroupDescription", - "Invoice.NotProcessed", - "Invoice.OrganizationID", - "Invoice.PerformedServices", - "Invoice.Processed", - "Invoice.Total", - "JP.Amount", - "JP.AuthForward", - "JP.AuthorizationCode", - "JP.CardSuffix", - "JP.Currency", - "JP.CustomerFirstName", - "JP.CustomerLastName", - "JP.Date", - "JP.Gateway", - "JP.JPOInstallmentMethod", - "JP.JPOPaymentMethod", - "JP.MerchantID", - "JP.MerchantReferenceNumber", - "JP.PaymentMethod", - "JP.RequestID", - "JP.SubscriptionID", - "JP.Time", - "JP.TransactionReferenceNumber", - "JP.TransactionType", - "LineItems.FulfillmentType", - "LineItems.InvoiceNumber", - "LineItems.MerchantProductSku", - "LineItems.ProductCode", - "LineItems.ProductName", - "LineItems.Quantity", - "LineItems.TaxAmount", - "LineItems.UnitPrice", - "MarkAsSuspectFields.MarkingDate", - "MarkAsSuspectFields.MarkingNotes", - "MarkAsSuspectFields.MarkingReason", - "MarkAsSuspectFields.MarkingUserName", - "Merchant-DefinedDataFields.MerchantDefinedData1", - "Merchant-DefinedDataFields.MerchantDefinedData10", - "Merchant-DefinedDataFields.MerchantDefinedData100", - "Merchant-DefinedDataFields.MerchantDefinedData11", - "Merchant-DefinedDataFields.MerchantDefinedData12", - "Merchant-DefinedDataFields.MerchantDefinedData13", - "Merchant-DefinedDataFields.MerchantDefinedData14", - "Merchant-DefinedDataFields.MerchantDefinedData15", - "Merchant-DefinedDataFields.MerchantDefinedData16", - "Merchant-DefinedDataFields.MerchantDefinedData17", - "Merchant-DefinedDataFields.MerchantDefinedData18", - "Merchant-DefinedDataFields.MerchantDefinedData19", - "Merchant-DefinedDataFields.MerchantDefinedData2", - "Merchant-DefinedDataFields.MerchantDefinedData20", - "Merchant-DefinedDataFields.MerchantDefinedData21", - "Merchant-DefinedDataFields.MerchantDefinedData22", - "Merchant-DefinedDataFields.MerchantDefinedData23", - "Merchant-DefinedDataFields.MerchantDefinedData24", - "Merchant-DefinedDataFields.MerchantDefinedData25", - "Merchant-DefinedDataFields.MerchantDefinedData26", - "Merchant-DefinedDataFields.MerchantDefinedData27", - "Merchant-DefinedDataFields.MerchantDefinedData28", - "Merchant-DefinedDataFields.MerchantDefinedData29", - "Merchant-DefinedDataFields.MerchantDefinedData3", - "Merchant-DefinedDataFields.MerchantDefinedData30", - "Merchant-DefinedDataFields.MerchantDefinedData31", - "Merchant-DefinedDataFields.MerchantDefinedData32", - "Merchant-DefinedDataFields.MerchantDefinedData34", - "Merchant-DefinedDataFields.MerchantDefinedData35", - "Merchant-DefinedDataFields.MerchantDefinedData36", - "Merchant-DefinedDataFields.MerchantDefinedData37", - "Merchant-DefinedDataFields.MerchantDefinedData39", - "Merchant-DefinedDataFields.MerchantDefinedData4", - "Merchant-DefinedDataFields.MerchantDefinedData40", - "Merchant-DefinedDataFields.MerchantDefinedData41", - "Merchant-DefinedDataFields.MerchantDefinedData43", - "Merchant-DefinedDataFields.MerchantDefinedData44", - "Merchant-DefinedDataFields.MerchantDefinedData45", - "Merchant-DefinedDataFields.MerchantDefinedData46", - "Merchant-DefinedDataFields.MerchantDefinedData48", - "Merchant-DefinedDataFields.MerchantDefinedData49", - "Merchant-DefinedDataFields.MerchantDefinedData5", - "Merchant-DefinedDataFields.MerchantDefinedData50", - "Merchant-DefinedDataFields.MerchantDefinedData52", - "Merchant-DefinedDataFields.MerchantDefinedData53", - "Merchant-DefinedDataFields.MerchantDefinedData54", - "Merchant-DefinedDataFields.MerchantDefinedData56", - "Merchant-DefinedDataFields.MerchantDefinedData57", - "Merchant-DefinedDataFields.MerchantDefinedData58", - "Merchant-DefinedDataFields.MerchantDefinedData59", - "Merchant-DefinedDataFields.MerchantDefinedData6", - "Merchant-DefinedDataFields.MerchantDefinedData61", - "Merchant-DefinedDataFields.MerchantDefinedData62", - "Merchant-DefinedDataFields.MerchantDefinedData63", - "Merchant-DefinedDataFields.MerchantDefinedData65", - "Merchant-DefinedDataFields.MerchantDefinedData66", - "Merchant-DefinedDataFields.MerchantDefinedData67", - "Merchant-DefinedDataFields.MerchantDefinedData68", - "Merchant-DefinedDataFields.MerchantDefinedData7", - "Merchant-DefinedDataFields.MerchantDefinedData70", - "Merchant-DefinedDataFields.MerchantDefinedData71", - "Merchant-DefinedDataFields.MerchantDefinedData72", - "Merchant-DefinedDataFields.MerchantDefinedData73", - "Merchant-DefinedDataFields.MerchantDefinedData74", - "Merchant-DefinedDataFields.MerchantDefinedData75", - "Merchant-DefinedDataFields.MerchantDefinedData76", - "Merchant-DefinedDataFields.MerchantDefinedData77", - "Merchant-DefinedDataFields.MerchantDefinedData78", - "Merchant-DefinedDataFields.MerchantDefinedData79", - "Merchant-DefinedDataFields.MerchantDefinedData8", - "Merchant-DefinedDataFields.MerchantDefinedData80", - "Merchant-DefinedDataFields.MerchantDefinedData81", - "Merchant-DefinedDataFields.MerchantDefinedData82", - "Merchant-DefinedDataFields.MerchantDefinedData83", - "Merchant-DefinedDataFields.MerchantDefinedData84", - "Merchant-DefinedDataFields.MerchantDefinedData85", - "Merchant-DefinedDataFields.MerchantDefinedData86", - "Merchant-DefinedDataFields.MerchantDefinedData87", - "Merchant-DefinedDataFields.MerchantDefinedData88", - "Merchant-DefinedDataFields.MerchantDefinedData89", - "Merchant-DefinedDataFields.MerchantDefinedData9", - "Merchant-DefinedDataFields.MerchantDefinedData90", - "Merchant-DefinedDataFields.MerchantDefinedData91", - "Merchant-DefinedDataFields.MerchantDefinedData92", - "Merchant-DefinedDataFields.MerchantDefinedData93", - "Merchant-DefinedDataFields.MerchantDefinedData94", - "Merchant-DefinedDataFields.MerchantDefinedData95", - "Merchant-DefinedDataFields.MerchantDefinedData96", - "Merchant-DefinedDataFields.MerchantDefinedData97", - "Merchant-DefinedDataFields.MerchantDefinedData98", - "Merchant-DefinedDataFields.MerchantDefinedData99", - "OctSummary.AccountId", - "OctSummary.ResellerId", - "OctSummary.SettlementAmountCurrency", - "OctSummary.SettlementDate", - "OctSummary.TransactionAmountCurrency", - "OrderFields.ConnectionMethod", - "OrderFields.MerchantID", - "OrderFields.MerchantReferenceNumber", - "OrderFields.ReasonCode", - "OrderFields.ReplyCode", - "OrderFields.ReplyFlag", - "OrderFields.ReplyMessage", - "OrderFields.RequestID", - "OrderFields.ShippingMethod", - "OrderFields.TransactionDate", - "PayerAuth.RequestID", - "PayerAuth.TransactionType", - "PaymentData.ACHVerificationResult", - "PaymentData.ACHVerificationResultMapped", - "PaymentData.AcquirerMerchantID", - "PaymentData.AuthIndicator", - "PaymentData.AuthorizationCode", - "PaymentData.AuthorizationType", - "PaymentData.AuthReversalAmount", - "PaymentData.AuthReversalResult", - "PaymentData.AVSResult", - "PaymentData.AVSResultMapped", - "PaymentData.BalanceAmount", - "PaymentData.BalanceCurrencyCode", - "PaymentData.BinNumber", - "PaymentData.CardCategory", - "PaymentData.CardCategoryCode", - "PaymentData.CardPresent", - "PaymentData.CurrencyCode", - "PaymentData.CVResult", - "PaymentData.DCCIndicator", - "PaymentData.EMVRequestFallBack", - "PaymentData.EVEmail", - "PaymentData.EVEmailRaw", - "PaymentData.EVName", - "PaymentData.EVNameRaw", - "PaymentData.EVPhoneNumber", - "PaymentData.EVPhoneNumberRaw", - "PaymentData.EVPostalCode", - "PaymentData.EVPostalCodeRaw", - "PaymentData.EVStreet", - "PaymentData.EVStreetRaw", - "PaymentData.ExchangeRate", - "PaymentData.ExchangeRateDate", - "PaymentData.MandateReferenceNumber", - "PaymentData.NetworkCode", - "PaymentData.NetworkTransactionID", - "PaymentData.NumberOfInstallments", - "PaymentData.OriginalAmount", - "PaymentData.OriginalCurrency", - "PaymentData.PaymentProductCode", - "PaymentData.POSEntryMode", - "PaymentData.ProcessorMID", - "PaymentData.ProcessorResponseCode", - "PaymentData.ProcessorResponseID", - "PaymentData.ProcessorTID", - "PaymentData.ProcessorTransactionID", - "PaymentData.RequestedAmount", - "PaymentData.RequestedAmountCurrencyCode", - "PaymentData.SubMerchantCity", - "PaymentData.SubMerchantCountry", - "PaymentData.SubMerchantEmail", - "PaymentData.SubMerchantID", - "PaymentData.SubMerchantName", - "PaymentData.SubMerchantPhone", - "PaymentData.SubMerchantPostalCode", - "PaymentData.SubMerchantState", - "PaymentData.SubMerchantStreet", - "PaymentData.TargetAmount", - "PaymentData.TargetCurrency", - "PaymentFields.AccountSuffix", - "PaymentFields.CardBIN", - "PaymentFields.CardBINCountry", - "PaymentFields.CardIssuer", - "PaymentFields.CardScheme", - "PaymentFields.CardType", - "PaymentFields.CardVerificationResult", - "PaymentMethod.AccountSuffix", - "PaymentMethod.AdditionalCardType", - "PaymentMethod.BankAccountName", - "PaymentMethod.BankCode", - "PaymentMethod.BoletoBarCodeNumber", - "PaymentMethod.BoletoNumber", - "PaymentMethod.CardType", - "PaymentMethod.CheckNumber", - "PaymentMethod.ExpirationMonth", - "PaymentMethod.ExpirationYear", - "PaymentMethod.IssueNumber", - "PaymentMethod.MandateId", - "PaymentMethod.StartMonth", - "PaymentMethod.StartYear", - "PaymentMethod.WalletType", - "POSTerminalExceptions.AccountSuffix", - "POSTerminalExceptions.CurrencyCode", - "POSTerminalExceptions.ExpirationMO", - "POSTerminalExceptions.ExpirationYR", - "POSTerminalExceptions.LastName", - "POSTerminalExceptions.MerchantID", - "Recipient.RecipientBillingAmount", - "Recipient.RecipientBillingCurrency", - "Recipient.ReferenceNumber", - "Request.PartnerOriginalTransactionID", - "Sender.Address", - "Sender.City", - "Sender.Country", - "Sender.DOB", - "Sender.FirstName", - "Sender.LastName", - "Sender.MiddleInitial", - "Sender.PhoneNumber", - "Sender.PostalCode", - "Sender.SenderReferenceNumber", - "Sender.SourceOfFunds", - "Sender.State", - "ShipTo.CompanyName", - "Subscriptions.Applications", - "Subscriptions.AuthAVSResults", - "Subscriptions.AuthCardVerificationResult", - "Subscriptions.AuthCode", - "Subscriptions.AuthRCode", - "Subscriptions.AuthResponseCode", - "Subscriptions.AuthType", - "Subscriptions.BillToAddress1", - "Subscriptions.BillToAddress2", - "Subscriptions.BillToCity", - "Subscriptions.BillToCompanyName", - "Subscriptions.BillToCountry", - "Subscriptions.BillToEmail", - "Subscriptions.BillToFirstName", - "Subscriptions.BillToLastName", - "Subscriptions.BillToState", - "Subscriptions.BillToZip", - "Subscriptions.CardType", - "Subscriptions.Comments", - "Subscriptions.ConsumerPhone", - "Subscriptions.CurrencyCode", - "Subscriptions.CustomerCCAccountSuffix", - "Subscriptions.CustomerCCExpiryMonth", - "Subscriptions.CustomerCCExpiryYear", - "Subscriptions.CustomerCCIssueNo", - "Subscriptions.CustomerCCRoutingNumber", - "Subscriptions.CustomerCCStartMonth", - "Subscriptions.CustomerCCStartYear", - "Subscriptions.CustomerCCSubTypeDescription", - "Subscriptions.EcommerceIndicator", - "Subscriptions.IPAddress", - "Subscriptions.MerchantDefinedData1", - "Subscriptions.MerchantDefinedData2", - "Subscriptions.MerchantDefinedData3", - "Subscriptions.MerchantDefinedData4", - "Subscriptions.MerchantRefNo", - "Subscriptions.MerchantSecureData1", - "Subscriptions.MerchantSecureData2", - "Subscriptions.MerchantSecureData3", - "Subscriptions.MerchantSecureData4", - "Subscriptions.PaymentProcessor", - "Subscriptions.PaymentsSuccess", - "Subscriptions.RCode", - "Subscriptions.ReasonCode", - "Subscriptions.RequestID", - "Subscriptions.RequestToken", - "Subscriptions.RFlag", - "Subscriptions.RMsg", - "Subscriptions.ShipToAddress1", - "Subscriptions.ShipToAddress2", - "Subscriptions.ShipToCity", - "Subscriptions.ShipToCompanyName", - "Subscriptions.ShipToCountry", - "Subscriptions.ShipToFirstName", - "Subscriptions.ShipToLastName", - "Subscriptions.ShipToState", - "Subscriptions.ShipToZip", - "Subscriptions.SubscriptionID", - "Subscriptions.TaxAmount", - "Subscriptions.TransactionDate", - "Subscriptions.TransRefNo", - "TaxCalculation.Status", - "Token.NetworkTokenTransType", - "Token.TokenCode", - "TransactionDetails.MerchantId", - "TransactionDetails.PaymentMethodDesc", - "TransactionDetails.PaymentMethodType", - "TransactionDetails.RequestId", - "TravelFields.DepartureTime", - "VelocityMorphing.FieldName", - "VelocityMorphing.InfoCode", - "WhitepagesProFields.EmailDomainCreationDate" - ], - "reportMimeType": "application/xml", - "reportName": "testrest_v2", - "timezone": "GMT", - "reportStartTime": "2020-03-01T12:00:00Z", - "reportEndTime": "2020-03-02T12:00:00Z", - "reportPreferences": { - "signedAmounts": "true", - "fieldNameConvention": "SOAPI" - } - } - } - } - } - }, - "/reporting/v3/reports/{reportId}": { - "get": { - "tags": [ - "Reports" - ], - "summary": "Get Report Based on Report Id", - "description": "Download a report using the reportId value. If you don\u2019t already know this value, you can obtain it using the Retrieve available reports call.\n", - "operationId": "getReportByReportId", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest" - }, - "x-depends": { - "example": { - "path": "/reporting/v3/reports", - "verb": "get", - "exampleId": "Retrieve available reports" - }, - "fieldMapping": [ - { - "sourceField": "reportSearchResults[0].reportId", - "destinationField": "reportId", - "fieldTypeInDestination": "path" - } - ] - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "reportId", - "in": "path", - "description": "Valid Report Id", - "required": true, - "type": "string" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "title": "reportingV3ReportsIdGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "CyberSource merchant id", - "example": "myMerchantId" - }, - "reportId": { - "type": "string", - "description": "Report ID Value", - "example": "6da01922-bb8e-a1fb-e053-7cb8d30ade29" - }, - "reportDefinitionId": { - "type": "string", - "description": "Report definition Id", - "example": "210" - }, - "reportName": { - "type": "string", - "description": "Report Name", - "example": "My Transaction Request report" - }, - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Report Format\n\nValid values:\n- application/xml\n- text/csv\n" - }, - "reportFrequency": { - "type": "string", - "example": "DAILY", - "description": "Report Frequency Value\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- ADHOC\n" - }, - "reportFields": { - "type": "array", - "description": "List of Integer Values", - "items": { - "type": "string" - }, - "example": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID" - ] - }, - "reportStatus": { - "type": "string", - "description": "Report Status Value\n\nValid values:\n- COMPLETED\n- PENDING\n- QUEUED\n- RUNNING\n- ERROR\n- NO_DATA\n- RERUN\n" - }, - "reportStartTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00", - "description": "Report Start Time Value" - }, - "reportEndTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-02T10:10:10+05:00", - "description": "Report End Time Value" - }, - "timezone": { - "type": "string", - "description": "Time Zone Value", - "example": "America/Chicago" - }, - "reportFilters": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] - } - }, - "reportPreferences": { - "description": "Report Preferences", - "type": "object", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - }, - "groupId": { - "type": "string", - "description": "Id for selected group.", - "example": "12345" - } - }, - "description": "Report Log" - } - }, - "400": { - "description": "Invalid Request", - "schema": { - "title": "reportingV3ReportsIdPost400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "No Reports Found" - } - } - } - }, - "/reporting/v3/report-definitions/{reportDefinitionName}": { - "get": { - "tags": [ - "Report Definitions" - ], - "summary": "Get Report Definition", - "description": "View the attributes of an individual report type. For a list of values for reportDefinitionName, see the [Reporting Developer Guide](https://www.cybersource.com/developers/documentation/reporting_and_reconciliation/)\n", - "operationId": "getResourceInfoByReportDefinition", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "reportDefinitionName", - "in": "path", - "description": "Name of the Report definition to retrieve", - "required": true, - "type": "string" - }, - { - "name": "subscriptionType", - "in": "query", - "description": "The subscription type for which report definition is required. By default the type will be CUSTOM.\nValid Values:\n- CLASSIC\n- CUSTOM\n- STANDARD\n", - "required": false, - "type": "string" - }, - { - "name": "reportMimeType", - "in": "query", - "description": "The format for which the report definition is required. By default the value will be CSV.\nValid Values:\n- application/xml\n- text/csv\n", - "required": false, - "type": "string" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3ReportDefinitionsNameGet200Response", - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "reportDefinitionId": { - "type": "integer", - "format": "int32" - }, - "reportDefintionName": { - "type": "string" - }, - "attributes": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "filterType": { - "type": "string", - "description": "Attribute Filter Type.", - "example": "MULTI" - }, - "default": { - "type": "boolean" - }, - "required": { - "type": "boolean" - }, - "supportedType": { - "type": "string", - "description": "Valid values for the filter.", - "example": [ - "ics_score", - "ics_ap_auth", - "ics_ap_auth_reversal", - "ics_ap_billing_agreement", - "ics_ap_cancel", - "ics_ap_capture", - "ics_ap_initiate", - "ics_ap_options", - "ics_ap_order", - "ics_ap_refund", - "ics_ap_sale", - "ics_ap_sessions", - "ics_ap_check_status", - "ics_auto_auth_reversal", - "ics_bank_transfer", - "ics_bank_transfer_real_time", - "ics_bank_transfer_refund", - "ics_bin_lookup", - "ics_boleto_payment", - "ics_cm_action", - "ics_china_payment", - "ics_china_refund", - "ics_auth", - "ics_auto_full_auth_reversal", - "ics_auth_refresh", - "ics_auth_reversal", - "ics_credit", - "ics_bill", - "ics_risk_update", - "ics_dcc", - "ics_dcc_update", - "ics_decision", - "ics_dm_event", - "ics_direct_debit", - "ics_direct_debit_mandate", - "ics_direct_debit_refund", - "ics_direct_debit_validate", - "ics_ecp_authenticate", - "ics_ecp_credit", - "ics_ecp_debit", - "ics_get_masterpass_data", - "ics_get_visa_checkout_data", - "ics_create_isv", - "ics_get_isv_history", - "ics_add_value_to_isv", - "ics_get_isv_info", - "ics_modify_isv", - "ics_get_isv_profiles", - "ics_redeem_isv", - "ics_ifs_setup", - "ics_ifs_update", - "ics_ipgeo", - "ics_oct", - "ics_pa_enroll", - "ics_pa_validate", - "paypal_mip_agreement_ipn", - "ics_paypal_button_create", - "ics_paypal_credit", - "ics_paypal_authorization", - "ics_paypal_create_agreement", - "ics_paypal_update_agreement", - "ics_paypal_ec_order_setup", - "ics_paypal_auth_reversal", - "ics_paypal_ec_do_payment", - "ics_paypal_do_ref_transaction", - "ics_paypal_refund", - "ics_paypal_do_capture", - "paypal_ipn", - "ics_paypal_preapproved_payment", - "ics_pinless_debit", - "ics_pinless_debit_validate", - "ics_pinless_debit_reversal", - "ics_export", - "ics_service_fee_auth", - "ics_service_fee_auth_reversal", - "ics_service_fee_bill", - "ics_service_fee_credit", - "ics_service_fee_ecp_credit", - "ics_service_fee_ecp_debit", - "ics_pay_subscription_create", - "ics_pay_subscription_create_dup", - "ics_pay_subscription_delete", - "ics_pay_subscription_update", - "ics_dav", - "ics_download", - "ics_tax", - "ics_timeout_auth_reversal", - "ics_timeout_oct_reversal", - "ics_void", - "ics_pin_debit_purchase", - "ics_pin_debit_credit", - "ics_pin_debit_reversal", - "ics_timeout_pin_debit_reversal", - "ics_gift_card_activation", - "ics_gift_card_balance_inquiry", - "ics_gift_card_redemption", - "ics_gift_card_refund", - "ics_gift_card_reload", - "ics_gift_card_void", - "ics_gift_card_reversal" - ] - } - } - } - }, - "supportedFormats": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string", - "description": "Valid values:\n- application/xml\n- text/csv\n" - } - }, - "description": { - "type": "string" - }, - "defaultSettings": { - "type": "object", - "properties": { - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Report Format\nValid values:\n - application/xml\n - text/csv\n" - }, - "reportFrequency": { - "type": "string", - "example": "DAILY", - "description": "Report Frequency Value\nValid Values:\n - DAILY\n - WEEKLY\n - MONTHLY\n - ADHOC\n" - }, - "reportName": { - "type": "string", - "description": "Report Name", - "example": "My Transaction Request Detail Report" - }, - "timezone": { - "type": "string", - "description": "Time Zone", - "example": "America/Chicago" - }, - "startTime": { - "type": "string", - "description": "Start Time", - "example": "0000" - }, - "startDay": { - "type": "integer", - "format": "int32", - "description": "Start Day", - "example": 1 - }, - "reportFilters": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] - } - }, - "reportPreferences": { - "type": "object", - "description": "Report Preferences", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - } - } - }, - "subscriptionType": { - "type": "string", - "example": "CLASSIC", - "description": "'The subscription type for which report definition is required. By default the type will be CUSTOM.'\nValid Values:\n- 'CLASSIC'\n- 'CUSTOM'\n- 'STANDARD'\n" - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ReportDefinitionsNameGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Report not found" - } - } - } - }, - "/reporting/v3/report-definitions": { - "get": { - "tags": [ - "Report Definitions" - ], - "summary": "Get Reporting Resource Information", - "description": "View a list of supported reports and their attributes before subscribing to them.\n", - "operationId": "getResourceV2Info", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "in": "query", - "name": "subscriptionType", - "required": false, - "type": "string", - "description": "Valid Values:\n- CLASSIC\n- CUSTOM\n- STANDARD\n" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3ReportDefinitionsGet200Response", - "type": "object", - "properties": { - "reportDefinitions": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "reportDefinitionId": { - "type": "integer", - "format": "int32", - "description": "| Id | Definition Class |\n| --- | --------------------------------- |\n| 210 | TransactionRequestClass |\n| 211 | PaymentBatchDetailClass |\n| 212 | ExceptionDetailClass |\n| 213 | ProcessorSettlementDetailClass |\n| 214 | ProcessorEventsDetailClass |\n| 215 | FundingDetailClass |\n| 216 | AgingDetailClass |\n| 217 | ChargebackAndRetrievalDetailClass |\n| 218 | DepositDetailClass |\n| 219 | FeeDetailClass |\n| 220 | InvoiceSummaryClass |\n| 221 | PayerAuthDetailClass |\n| 222 | ConversionDetailClass |\n| 270 | JPTransactionDetailClass |\n| 271 | ServiceFeeDetailClass |\n| 310 | GatewayTransactionRequestClass |\n| 400 | DecisionManagerEventDetailClass |\n| 401 | DecisionManagerDetailClass |\n| 410 | FeeSummaryClass |\n| 420 | TaxCalculationClass |\n| 520 | POSTerminalExceptionClass |\n| 620 | SubscriptionDetailClass |\n" - }, - "reportDefintionName": { - "type": "string" - }, - "supportedFormats": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string", - "description": "Valid values:\n- application/xml\n- text/csv\n" - } - }, - "description": { - "type": "string" - }, - "defaultSettings": { - "type": "object", - "properties": { - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Report Format\nValid values:\n - application/xml\n - text/csv\n" - }, - "reportFrequency": { - "type": "string", - "example": "DAILY", - "description": "Report Frequency Value\nValid Values:\n - DAILY\n - WEEKLY\n - MONTHLY\n - ADHOC\n" - }, - "reportName": { - "type": "string", - "description": "Report Name", - "example": "My Transaction Request Detail Report" - }, - "timezone": { - "type": "string", - "description": "Time Zone", - "example": "America/Chicago" - }, - "startTime": { - "type": "string", - "description": "Start Time", - "example": "0000" - }, - "startDay": { - "type": "integer", - "format": "int32", - "description": "Start Day", - "example": 1 - }, - "reportFilters": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] - } - }, - "reportPreferences": { - "type": "object", - "description": "Report Preferences", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - } - } - }, - "subscriptionType": { - "type": "string", - "example": "CLASSIC", - "description": "'The subscription type for which report definition is required. By default the type will be CUSTOM.'\nValid Values:\n- CLASSIC\n- CUSTOM\n- STANDARD\n" - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ReportDefinitionsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Report not found" - } - } - } - }, - "/reporting/v3/report-subscriptions": { - "get": { - "tags": [ - "Report Subscriptions" - ], - "summary": "Get All Subscriptions", - "description": "View a summary of all report subscriptions.\n", - "operationId": "getAllSubscriptions", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3ReportSubscriptionsGet200Response", - "type": "object", - "properties": { - "subscriptions": { - "type": "array", - "items": { - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Selected Organization Id", - "example": "Merchant 1" - }, - "reportDefinitionId": { - "type": "string", - "description": "Report Definition Id", - "example": "210" - }, - "reportDefinitionName": { - "type": "string", - "description": "Report Definition Class", - "example": "TransactionRequestDetailClass" - }, - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Report Format \n \nValid values:\n- application/xml\n- text/csv\n" - }, - "reportFrequency": { - "type": "string", - "example": "DAILY", - "description": "'Report Frequency'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- USER_DEFINED\n" - }, - "reportInterval": { - "type": "string", - "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", - "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" - }, - "reportName": { - "type": "string", - "description": "Report Name", - "example": "My Transaction Request Detail Report" - }, - "timezone": { - "type": "string", - "description": "Time Zone", - "example": "America/Chicago" - }, - "startTime": { - "type": "string", - "description": "Start Time", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "startDay": { - "type": "integer", - "format": "int32", - "description": "Start Day", - "example": 1 - }, - "reportFields": { - "type": "array", - "example": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID" - ], - "description": "List of all fields String values", - "items": { - "type": "string" - } - }, - "reportFilters": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] - } - }, - "reportPreferences": { - "type": "object", - "description": "Report Preferences", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - }, - "groupId": { - "type": "string", - "example": "12345", - "description": "Id for the selected group." - } - }, - "description": "Subscription Details" - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ReportSubscriptionsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Subscriptions not found" - } - } - }, - "put": { - "tags": [ - "Report Subscriptions" - ], - "summary": "Create Report Subscription for a Report Name by Organization", - "description": "Create a report subscription for your organization. The report name must be unique.\n", - "operationId": "createSubscription", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "in": "body", - "name": "createReportSubscriptionRequest", - "description": "Report subscription request payload", - "required": true, - "schema": { - "type": "object", - "required": [ - "reportDefinitionName", - "reportFields", - "reportName", - "startTime", - "timezone", - "reportFrequency", - "reportMimeType" - ], - "properties": { - "organizationId": { - "type": "string", - "pattern": "[a-zA-Z0-9-_]+", - "description": "Valid CyberSource organizationId", - "example": "Merchant 1" - }, - "reportDefinitionName": { - "type": "string", - "minLength": 1, - "maxLength": 80, - "pattern": "[a-zA-Z0-9-]+", - "description": "Valid Report Definition Name", - "example": "TransactionDetailReportClass" - }, - "reportFields": { - "type": "array", - "items": { - "type": "string" - }, - "example": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID" - ] - }, - "reportMimeType": { - "type": "string", - "description": "Valid values:\n- application/xml\n- text/csv\n", - "example": "application/xml" - }, - "reportFrequency": { - "type": "string", - "description": "'The frequency for which subscription is created.'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\nValid Values:\n - 'DAILY'\n - 'WEEKLY'\n - 'MONTHLY'\n - 'USER_DEFINED'\n", - "example": "DAILY" - }, - "reportInterval": { - "type": "string", - "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", - "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" - }, - "reportName": { - "type": "string", - "minLength": 1, - "maxLength": 128, - "pattern": "[a-zA-Z0-9-_ ]+", - "example": "My Daily Subscription" - }, - "timezone": { - "type": "string", - "example": "America/Chicago" - }, - "startTime": { - "type": "string", - "description": "The hour at which the report generation should start. It should be in hhmm format.", - "example": "0900" - }, - "startDay": { - "type": "integer", - "minimum": 1, - "maximum": 31, - "description": "This is the start day if the frequency is WEEKLY or MONTHLY. The value varies from 1-7 for WEEKLY and 1-31 for MONTHLY. For WEEKLY 1 means Sunday and 7 means Saturday. By default the value is 1." - }, - "reportFilters": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] - } - }, - "reportPreferences": { - "type": "object", - "description": "Report Preferences", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - }, - "groupName": { - "type": "string", - "pattern": "[a-zA-Z0-9-_ ]+", - "description": "Valid GroupName", - "example": "CEMEA Group" - } - } - } - } - ], - "responses": { - "200": { - "description": "Ok" - }, - "304": { - "description": "NOT MODIFIED" - }, - "400": { - "description": "Invalid request", - "schema": { - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - } - } - }, - "x-example": { - "example0": { - "summary": "Create Report Subscription", - "value": { - "reportDefinitionName": "TransactionRequestClass", - "reportFields": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID", - "AFSFields.IPAddress", - "AFSFields.IPCountry", - "AFSFields.IPRoutingMethod", - "AFSFields.IPState", - "Application.Name", - "BankInfo.Address", - "BankInfo.BranchCode", - "BankInfo.City", - "BankInfo.Country", - "BankInfo.Name", - "BankInfo.SwiftCode", - "BillTo.Address1", - "BillTo.Address2", - "BillTo.City", - "BillTo.CompanyName", - "BillTo.CompanyTaxID", - "BillTo.Country", - "BillTo.Email", - "BillTo.FirstName", - "BillTo.LastName", - "BillTo.MiddleName", - "BillTo.NameSuffix", - "BillTo.PersonalID", - "BillTo.Phone", - "BillTo.State", - "BillTo.Title", - "BillTo.Zip", - "ChargebackAndRetrieval.AdjustmentAmount", - "ChargebackAndRetrieval.AdjustmentCurrency", - "ChargebackAndRetrieval.ARN", - "ChargebackAndRetrieval.CaseIdentifier", - "ChargebackAndRetrieval.CaseNumber", - "ChargebackAndRetrieval.CaseTime", - "ChargebackAndRetrieval.CaseType", - "ChargebackAndRetrieval.ChargebackAmount", - "ChargebackAndRetrieval.ChargebackCurrency", - "ChargebackAndRetrieval.ChargebackMessage", - "ChargebackAndRetrieval.ChargebackReasonCode", - "ChargebackAndRetrieval.ChargebackReasonCodeDescription", - "ChargebackAndRetrieval.ChargebackTime", - "ChargebackAndRetrieval.DocumentIndicator", - "ChargebackAndRetrieval.FeeAmount", - "ChargebackAndRetrieval.FeeCurrency", - "ChargebackAndRetrieval.FinancialImpact", - "ChargebackAndRetrieval.FinancialImpactType", - "ChargebackAndRetrieval.MerchantCategoryCode", - "ChargebackAndRetrieval.PartialIndicator", - "ChargebackAndRetrieval.ResolutionTime", - "ChargebackAndRetrieval.ResolvedToIndicator", - "ChargebackAndRetrieval.RespondByDate", - "ChargebackAndRetrieval.TransactionType", - "Check.AccountEncoderID", - "Check.BankTransitNumber", - "Check.SecCode", - "CustomerFields.BillingAddress1", - "CustomerFields.BillingAddress2", - "CustomerFields.BillingCity", - "CustomerFields.BillingCompanyName", - "CustomerFields.BillingCountry", - "CustomerFields.BillingEmail", - "CustomerFields.BillingFirstName", - "CustomerFields.BillingLastName", - "CustomerFields.BillingPhone", - "CustomerFields.BillingPostalCode", - "CustomerFields.BillingState", - "CustomerFields.CustomerID", - "CustomerFields.CustomerUserName", - "CustomerFields.PersonalId(CPF/CNPJ)", - "CustomerFields.ShippingAddress1", - "CustomerFields.ShippingAddress2", - "CustomerFields.ShippingCity", - "CustomerFields.ShippingCompanyName", - "CustomerFields.ShippingCountry", - "CustomerFields.ShippingFirstName", - "CustomerFields.ShippingLastName", - "CustomerFields.ShippingPhone", - "CustomerFields.ShippingPostalCode", - "CustomerFields.ShippingState", - "DecisionManagerEvents.EventPolicy", - "DecisionManagerEvents.TypeofEvent", - "Device.DeviceID", - "DeviceFingerprintFields.abcd", - "DeviceFingerprintFields.BrowserLanguage", - "DeviceFingerprintFields.DeviceLatitude", - "DeviceFingerprintFields.DeviceLongitude", - "DeviceFingerprintFields.displayNameFinalCheck", - "DeviceFingerprintFields.DMESignOffFieldEdit", - "DeviceFingerprintFields.Fingerprint/DeviceFingerprint", - "DeviceFingerprintFields.FlashEnabled", - "DeviceFingerprintFields.FlashOperatingSystem", - "DeviceFingerprintFields.FlashVersion", - "DeviceFingerprintFields.GPSAccuracy", - "DeviceFingerprintFields.ImagesEnabled", - "DeviceFingerprintFields.Jailbreak/RootPrivileges", - "DeviceFingerprintFields.JavaScriptEnabled", - "DeviceFingerprintFields.ProfiledURL", - "DeviceFingerprintFields.ProxyIPAddress", - "DeviceFingerprintFields.ProxyIPAddressActivities", - "DeviceFingerprintFields.ProxyServerType", - "DeviceFingerprintFields.ScreenResolution", - "DeviceFingerprintFields.SignOffFieldDMEEditNewOne", - "DeviceFingerprintFields.SmartID", - "DeviceFingerprintFields.SmartIDConfidenceLevel", - "DeviceFingerprintFields.TimeOnPage", - "DeviceFingerprintFields.TrueIPAddress", - "DeviceFingerprintFields.TrueIPAddressActivities", - "DeviceFingerprintFields.TrueIPAddressAttributes", - "DeviceFingerprintFields.txdea1", - "DeviceFingerprintFields.txdesv", - "EmailageFields.FraudType", - "EmailageFields.IP Postal", - "EmailageFields.IPCity", - "EmailageFields.IPCountry", - "EmailageFields.IPRegion", - "EmailageFields.SourceIndustry", - "Event.Amount", - "Event.CurrencyCode", - "Event.Event", - "Event.EventDate", - "Event.ProcessorMessage", - "Exception.Action", - "Exception.CYBSExceptionID", - "Exception.DccLookupStatus", - "Exception.ExceptionAmount", - "Exception.ExceptionAmountCurrency", - "Exception.ExceptionCategory", - "Exception.ExceptionDate", - "Exception.ExceptionDescription", - "Exception.ExceptionDeviceHardwareRevision", - "Exception.ExceptionDeviceID", - "Exception.ExceptionDeviceOS", - "Exception.ExceptionDeviceOSVersion", - "Exception.ExceptionDeviceTerminalID", - "Exception.ExceptionMessage", - "Exception.ExceptionReasonDescription", - "Exception.ExceptionStatus", - "Exception.ExceptionStatusCode", - "Exception.ExceptionType", - "Exception.FinancialStatus", - "Exception.LastActionDate", - "Exception.NextActionDate", - "Exception.OriginalTransactionSubmissionDate", - "Exception.PaymentNumber", - "Exception.ProcessorCaseID", - "Exception.ProcessorResponseCode", - "Exception.ReasonCode", - "Exception.RetryCount", - "Fee.AssessmentAmount", - "Fee.AssessmentCurrency", - "Fee.BillingCycle", - "Fee.BillingType", - "Fee.ClearedInterchangeLevel", - "Fee.DiscountAmount", - "Fee.DiscountCurrency", - "Fee.DiscountRate", - "Fee.DowngradeReasonCode", - "Fee.InterchangeAmount", - "Fee.InterchangeCurrency", - "Fee.InterchangeRate", - "Fee.PerItemFeeAmount", - "Fee.PerItemFeeCurrency", - "Fee.PricedInterchangeLevel", - "Fee.ServiceFeeAmount", - "Fee.ServiceFeeAmountCcy", - "Fee.ServiceFeeFixedAmount", - "Fee.ServiceFeeFixedAmountCcy", - "Fee.ServiceFeeRate", - "Fee.SettlementAmount", - "Fee.SettlementCurrency", - "Fee.SettlementTime", - "Fee.SettlementTimeZone", - "Fee.SourceDescriptor", - "Fee.TotalFeeAmount", - "Fee.TotalFeeCurrency", - "Funding.AdjustmentAmount", - "Funding.AdjustmentCurrency", - "Funding.AdjustmentDescription", - "Funding.AdjustmentType", - "FundTransfer.BankCheckDigit", - "FundTransfer.IbanIndicator", - "Invoice.BillingGroupDescription", - "Invoice.NotProcessed", - "Invoice.OrganizationID", - "Invoice.PerformedServices", - "Invoice.Processed", - "Invoice.Total", - "JP.Amount", - "JP.AuthForward", - "JP.AuthorizationCode", - "JP.CardSuffix", - "JP.Currency", - "JP.CustomerFirstName", - "JP.CustomerLastName", - "JP.Date", - "JP.Gateway", - "JP.JPOInstallmentMethod", - "JP.JPOPaymentMethod", - "JP.MerchantID", - "JP.MerchantReferenceNumber", - "JP.PaymentMethod", - "JP.RequestID", - "JP.SubscriptionID", - "JP.Time", - "JP.TransactionReferenceNumber", - "JP.TransactionType", - "LineItems.FulfillmentType", - "LineItems.InvoiceNumber", - "LineItems.MerchantProductSku", - "LineItems.ProductCode", - "LineItems.ProductName", - "LineItems.Quantity", - "LineItems.TaxAmount", - "LineItems.UnitPrice", - "MarkAsSuspectFields.MarkingDate", - "MarkAsSuspectFields.MarkingNotes", - "MarkAsSuspectFields.MarkingReason", - "MarkAsSuspectFields.MarkingUserName", - "Merchant-DefinedDataFields.MerchantDefinedData1", - "Merchant-DefinedDataFields.MerchantDefinedData10", - "Merchant-DefinedDataFields.MerchantDefinedData100", - "Merchant-DefinedDataFields.MerchantDefinedData11", - "Merchant-DefinedDataFields.MerchantDefinedData12", - "Merchant-DefinedDataFields.MerchantDefinedData13", - "Merchant-DefinedDataFields.MerchantDefinedData14", - "Merchant-DefinedDataFields.MerchantDefinedData15", - "Merchant-DefinedDataFields.MerchantDefinedData16", - "Merchant-DefinedDataFields.MerchantDefinedData17", - "Merchant-DefinedDataFields.MerchantDefinedData18", - "Merchant-DefinedDataFields.MerchantDefinedData19", - "Merchant-DefinedDataFields.MerchantDefinedData2", - "Merchant-DefinedDataFields.MerchantDefinedData20", - "Merchant-DefinedDataFields.MerchantDefinedData21", - "Merchant-DefinedDataFields.MerchantDefinedData22", - "Merchant-DefinedDataFields.MerchantDefinedData23", - "Merchant-DefinedDataFields.MerchantDefinedData24", - "Merchant-DefinedDataFields.MerchantDefinedData25", - "Merchant-DefinedDataFields.MerchantDefinedData26", - "Merchant-DefinedDataFields.MerchantDefinedData27", - "Merchant-DefinedDataFields.MerchantDefinedData28", - "Merchant-DefinedDataFields.MerchantDefinedData29", - "Merchant-DefinedDataFields.MerchantDefinedData3", - "Merchant-DefinedDataFields.MerchantDefinedData30", - "Merchant-DefinedDataFields.MerchantDefinedData31", - "Merchant-DefinedDataFields.MerchantDefinedData32", - "Merchant-DefinedDataFields.MerchantDefinedData34", - "Merchant-DefinedDataFields.MerchantDefinedData35", - "Merchant-DefinedDataFields.MerchantDefinedData36", - "Merchant-DefinedDataFields.MerchantDefinedData37", - "Merchant-DefinedDataFields.MerchantDefinedData39", - "Merchant-DefinedDataFields.MerchantDefinedData4", - "Merchant-DefinedDataFields.MerchantDefinedData40", - "Merchant-DefinedDataFields.MerchantDefinedData41", - "Merchant-DefinedDataFields.MerchantDefinedData43", - "Merchant-DefinedDataFields.MerchantDefinedData44", - "Merchant-DefinedDataFields.MerchantDefinedData45", - "Merchant-DefinedDataFields.MerchantDefinedData46", - "Merchant-DefinedDataFields.MerchantDefinedData48", - "Merchant-DefinedDataFields.MerchantDefinedData49", - "Merchant-DefinedDataFields.MerchantDefinedData5", - "Merchant-DefinedDataFields.MerchantDefinedData50", - "Merchant-DefinedDataFields.MerchantDefinedData52", - "Merchant-DefinedDataFields.MerchantDefinedData53", - "Merchant-DefinedDataFields.MerchantDefinedData54", - "Merchant-DefinedDataFields.MerchantDefinedData56", - "Merchant-DefinedDataFields.MerchantDefinedData57", - "Merchant-DefinedDataFields.MerchantDefinedData58", - "Merchant-DefinedDataFields.MerchantDefinedData59", - "Merchant-DefinedDataFields.MerchantDefinedData6", - "Merchant-DefinedDataFields.MerchantDefinedData61", - "Merchant-DefinedDataFields.MerchantDefinedData62", - "Merchant-DefinedDataFields.MerchantDefinedData63", - "Merchant-DefinedDataFields.MerchantDefinedData65", - "Merchant-DefinedDataFields.MerchantDefinedData66", - "Merchant-DefinedDataFields.MerchantDefinedData67", - "Merchant-DefinedDataFields.MerchantDefinedData68", - "Merchant-DefinedDataFields.MerchantDefinedData7", - "Merchant-DefinedDataFields.MerchantDefinedData70", - "Merchant-DefinedDataFields.MerchantDefinedData71", - "Merchant-DefinedDataFields.MerchantDefinedData72", - "Merchant-DefinedDataFields.MerchantDefinedData73", - "Merchant-DefinedDataFields.MerchantDefinedData74", - "Merchant-DefinedDataFields.MerchantDefinedData75", - "Merchant-DefinedDataFields.MerchantDefinedData76", - "Merchant-DefinedDataFields.MerchantDefinedData77", - "Merchant-DefinedDataFields.MerchantDefinedData78", - "Merchant-DefinedDataFields.MerchantDefinedData79", - "Merchant-DefinedDataFields.MerchantDefinedData8", - "Merchant-DefinedDataFields.MerchantDefinedData80", - "Merchant-DefinedDataFields.MerchantDefinedData81", - "Merchant-DefinedDataFields.MerchantDefinedData82", - "Merchant-DefinedDataFields.MerchantDefinedData83", - "Merchant-DefinedDataFields.MerchantDefinedData84", - "Merchant-DefinedDataFields.MerchantDefinedData85", - "Merchant-DefinedDataFields.MerchantDefinedData86", - "Merchant-DefinedDataFields.MerchantDefinedData87", - "Merchant-DefinedDataFields.MerchantDefinedData88", - "Merchant-DefinedDataFields.MerchantDefinedData89", - "Merchant-DefinedDataFields.MerchantDefinedData9", - "Merchant-DefinedDataFields.MerchantDefinedData90", - "Merchant-DefinedDataFields.MerchantDefinedData91", - "Merchant-DefinedDataFields.MerchantDefinedData92", - "Merchant-DefinedDataFields.MerchantDefinedData93", - "Merchant-DefinedDataFields.MerchantDefinedData94", - "Merchant-DefinedDataFields.MerchantDefinedData95", - "Merchant-DefinedDataFields.MerchantDefinedData96", - "Merchant-DefinedDataFields.MerchantDefinedData97", - "Merchant-DefinedDataFields.MerchantDefinedData98", - "Merchant-DefinedDataFields.MerchantDefinedData99", - "OctSummary.AccountId", - "OctSummary.ResellerId", - "OctSummary.SettlementAmountCurrency", - "OctSummary.SettlementDate", - "OctSummary.TransactionAmountCurrency", - "OrderFields.ConnectionMethod", - "OrderFields.MerchantID", - "OrderFields.MerchantReferenceNumber", - "OrderFields.ReasonCode", - "OrderFields.ReplyCode", - "OrderFields.ReplyFlag", - "OrderFields.ReplyMessage", - "OrderFields.RequestID", - "OrderFields.ShippingMethod", - "OrderFields.TransactionDate", - "PayerAuth.RequestID", - "PayerAuth.TransactionType", - "PaymentData.ACHVerificationResult", - "PaymentData.ACHVerificationResultMapped", - "PaymentData.AcquirerMerchantID", - "PaymentData.AuthIndicator", - "PaymentData.AuthorizationCode", - "PaymentData.AuthorizationType", - "PaymentData.AuthReversalAmount", - "PaymentData.AuthReversalResult", - "PaymentData.AVSResult", - "PaymentData.AVSResultMapped", - "PaymentData.BalanceAmount", - "PaymentData.BalanceCurrencyCode", - "PaymentData.BinNumber", - "PaymentData.CardCategory", - "PaymentData.CardCategoryCode", - "PaymentData.CardPresent", - "PaymentData.CurrencyCode", - "PaymentData.CVResult", - "PaymentData.DCCIndicator", - "PaymentData.EMVRequestFallBack", - "PaymentData.EVEmail", - "PaymentData.EVEmailRaw", - "PaymentData.EVName", - "PaymentData.EVNameRaw", - "PaymentData.EVPhoneNumber", - "PaymentData.EVPhoneNumberRaw", - "PaymentData.EVPostalCode", - "PaymentData.EVPostalCodeRaw", - "PaymentData.EVStreet", - "PaymentData.EVStreetRaw", - "PaymentData.ExchangeRate", - "PaymentData.ExchangeRateDate", - "PaymentData.MandateReferenceNumber", - "PaymentData.NetworkCode", - "PaymentData.NetworkTransactionID", - "PaymentData.NumberOfInstallments", - "PaymentData.OriginalAmount", - "PaymentData.OriginalCurrency", - "PaymentData.PaymentProductCode", - "PaymentData.POSEntryMode", - "PaymentData.ProcessorMID", - "PaymentData.ProcessorResponseCode", - "PaymentData.ProcessorResponseID", - "PaymentData.ProcessorTID", - "PaymentData.ProcessorTransactionID", - "PaymentData.RequestedAmount", - "PaymentData.RequestedAmountCurrencyCode", - "PaymentData.SubMerchantCity", - "PaymentData.SubMerchantCountry", - "PaymentData.SubMerchantEmail", - "PaymentData.SubMerchantID", - "PaymentData.SubMerchantName", - "PaymentData.SubMerchantPhone", - "PaymentData.SubMerchantPostalCode", - "PaymentData.SubMerchantState", - "PaymentData.SubMerchantStreet", - "PaymentData.TargetAmount", - "PaymentData.TargetCurrency", - "PaymentFields.AccountSuffix", - "PaymentFields.CardBIN", - "PaymentFields.CardBINCountry", - "PaymentFields.CardIssuer", - "PaymentFields.CardScheme", - "PaymentFields.CardType", - "PaymentFields.CardVerificationResult", - "PaymentMethod.AccountSuffix", - "PaymentMethod.AdditionalCardType", - "PaymentMethod.BankAccountName", - "PaymentMethod.BankCode", - "PaymentMethod.BoletoBarCodeNumber", - "PaymentMethod.BoletoNumber", - "PaymentMethod.CardType", - "PaymentMethod.CheckNumber", - "PaymentMethod.ExpirationMonth", - "PaymentMethod.ExpirationYear", - "PaymentMethod.IssueNumber", - "PaymentMethod.MandateId", - "PaymentMethod.StartMonth", - "PaymentMethod.StartYear", - "PaymentMethod.WalletType", - "POSTerminalExceptions.AccountSuffix", - "POSTerminalExceptions.CurrencyCode", - "POSTerminalExceptions.ExpirationMO", - "POSTerminalExceptions.ExpirationYR", - "POSTerminalExceptions.LastName", - "POSTerminalExceptions.MerchantID", - "Recipient.RecipientBillingAmount", - "Recipient.RecipientBillingCurrency", - "Recipient.ReferenceNumber", - "Request.PartnerOriginalTransactionID", - "Sender.Address", - "Sender.City", - "Sender.Country", - "Sender.DOB", - "Sender.FirstName", - "Sender.LastName", - "Sender.MiddleInitial", - "Sender.PhoneNumber", - "Sender.PostalCode", - "Sender.SenderReferenceNumber", - "Sender.SourceOfFunds", - "Sender.State", - "ShipTo.CompanyName", - "Subscriptions.Applications", - "Subscriptions.AuthAVSResults", - "Subscriptions.AuthCardVerificationResult", - "Subscriptions.AuthCode", - "Subscriptions.AuthRCode", - "Subscriptions.AuthResponseCode", - "Subscriptions.AuthType", - "Subscriptions.BillToAddress1", - "Subscriptions.BillToAddress2", - "Subscriptions.BillToCity", - "Subscriptions.BillToCompanyName", - "Subscriptions.BillToCountry", - "Subscriptions.BillToEmail", - "Subscriptions.BillToFirstName", - "Subscriptions.BillToLastName", - "Subscriptions.BillToState", - "Subscriptions.BillToZip", - "Subscriptions.CardType", - "Subscriptions.Comments", - "Subscriptions.ConsumerPhone", - "Subscriptions.CurrencyCode", - "Subscriptions.CustomerCCAccountSuffix", - "Subscriptions.CustomerCCExpiryMonth", - "Subscriptions.CustomerCCExpiryYear", - "Subscriptions.CustomerCCIssueNo", - "Subscriptions.CustomerCCRoutingNumber", - "Subscriptions.CustomerCCStartMonth", - "Subscriptions.CustomerCCStartYear", - "Subscriptions.CustomerCCSubTypeDescription", - "Subscriptions.EcommerceIndicator", - "Subscriptions.IPAddress", - "Subscriptions.MerchantDefinedData1", - "Subscriptions.MerchantDefinedData2", - "Subscriptions.MerchantDefinedData3", - "Subscriptions.MerchantDefinedData4", - "Subscriptions.MerchantRefNo", - "Subscriptions.MerchantSecureData1", - "Subscriptions.MerchantSecureData2", - "Subscriptions.MerchantSecureData3", - "Subscriptions.MerchantSecureData4", - "Subscriptions.PaymentProcessor", - "Subscriptions.PaymentsSuccess", - "Subscriptions.RCode", - "Subscriptions.ReasonCode", - "Subscriptions.RequestID", - "Subscriptions.RequestToken", - "Subscriptions.RFlag", - "Subscriptions.RMsg", - "Subscriptions.ShipToAddress1", - "Subscriptions.ShipToAddress2", - "Subscriptions.ShipToCity", - "Subscriptions.ShipToCompanyName", - "Subscriptions.ShipToCountry", - "Subscriptions.ShipToFirstName", - "Subscriptions.ShipToLastName", - "Subscriptions.ShipToState", - "Subscriptions.ShipToZip", - "Subscriptions.SubscriptionID", - "Subscriptions.TaxAmount", - "Subscriptions.TransactionDate", - "Subscriptions.TransRefNo", - "TaxCalculation.Status", - "Token.NetworkTokenTransType", - "Token.TokenCode", - "TransactionDetails.MerchantId", - "TransactionDetails.PaymentMethodDesc", - "TransactionDetails.PaymentMethodType", - "TransactionDetails.RequestId", - "TravelFields.DepartureTime", - "VelocityMorphing.FieldName", - "VelocityMorphing.InfoCode", - "WhitepagesProFields.EmailDomainCreationDate" - ], - "reportMimeType": "application/xml", - "reportFrequency": "WEEKLY", - "reportName": "testrest_subcription_v1", - "timezone": "GMT", - "startTime": "0900", - "startDay": "1" - } - } - } - } - }, - "/reporting/v3/report-subscriptions/{reportName}": { - "get": { - "tags": [ - "Report Subscriptions" - ], - "summary": "Get Subscription for Report Name", - "description": "View the details of a report subscription, such as the report format or report frequency, using the report\u2019s unique name.\n", - "operationId": "getSubscription", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-depends": { - "example": { - "path": "/reporting/v3/report-subscriptions", - "verb": "get", - "exampleId": "Get all subscriptions" - }, - "fieldMapping": [ - { - "sourceField": "_embedded.Subscriptions[0].reportName", - "destinationField": "reportName", - "fieldTypeInDestination": "path" - } - ] - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "reportName", - "in": "path", - "description": "Name of the Report to Retrieve", - "required": true, - "type": "string", - "maxLength": 80, - "minLength": 1, - "pattern": "[a-zA-Z0-9-_+]+" - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3ReportsSubscriptionsNameGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Selected Organization Id", - "example": "Merchant 1" - }, - "reportDefinitionId": { - "type": "string", - "description": "Report Definition Id", - "example": "210" - }, - "reportDefinitionName": { - "type": "string", - "description": "Report Definition Class", - "example": "TransactionRequestDetailClass" - }, - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Report Format \n \nValid values:\n- application/xml\n- text/csv\n" - }, - "reportFrequency": { - "type": "string", - "example": "DAILY", - "description": "'Report Frequency'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- USER_DEFINED\n" - }, - "reportInterval": { - "type": "string", - "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", - "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" - }, - "reportName": { - "type": "string", - "description": "Report Name", - "example": "My Transaction Request Detail Report" - }, - "timezone": { - "type": "string", - "description": "Time Zone", - "example": "America/Chicago" - }, - "startTime": { - "type": "string", - "description": "Start Time", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "startDay": { - "type": "integer", - "format": "int32", - "description": "Start Day", - "example": 1 - }, - "reportFields": { - "type": "array", - "example": [ - "Request.RequestID", - "Request.TransactionDate", - "Request.MerchantID" - ], - "description": "List of all fields String values", - "items": { - "type": "string" - } - }, - "reportFilters": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "description": "List of filters to apply", - "example": { - "Application.Name": [ - "ics_auth", - "ics_bill" - ] - } - }, - "reportPreferences": { - "type": "object", - "description": "Report Preferences", - "properties": { - "signedAmounts": { - "type": "boolean", - "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" - }, - "fieldNameConvention": { - "type": "string", - "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" - } - } - }, - "groupId": { - "type": "string", - "example": "12345", - "description": "Id for the selected group." - } - }, - "description": "Subscription Details" - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ReportSubscriptionsNameGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Subscription not found" - } - } - }, - "delete": { - "tags": [ - "Report Subscriptions" - ], - "summary": "Delete Subscription of a Report Name by Organization", - "description": "Delete a report subscription for your organization. You must know the unique name of the report you want to delete.\n", - "operationId": "deleteSubscription", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "x-depends": { - "example": { - "path": "/reporting/v3/report-subscriptions/{reportName}", - "verb": "get", - "exampleId": "Get subscription for report name" - }, - "fieldMapping": [ - { - "sourceField": "reportName", - "destinationField": "reportName", - "fieldTypeInDestination": "path" - } - ] - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "reportName", - "in": "path", - "description": "Name of the Report to Delete", - "required": true, - "type": "string", - "maxLength": 80, - "minLength": 1, - "pattern": "[a-zA-Z0-9-_+]+" - } - ], - "responses": { - "200": { - "description": "Ok" - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ReportSubscriptionsNameDelete400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Subscription not found", - "schema": { - "title": "reportingV3ReportSubscriptionsnameDelete404Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - } - } - } - }, - "/reporting/v3/predefined-report-subscriptions": { - "put": { - "tags": [ - "Report Subscriptions" - ], - "summary": "Create a Standard or Classic Subscription", - "description": "Create or update an already existing classic or standard subscription.\n", - "operationId": "createStandardOrClassicSubscription", - "x-devcenter-metaData": { - "categoryTag": "Reporting" - }, - "produces": [ - "application/hal+json" - ], - "parameters": [ - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "in": "body", - "name": "predefinedSubscriptionRequestBean", - "description": "Report subscription request payload", - "required": true, - "schema": { - "type": "object", - "required": [ - "reportDefinitionName", - "subscriptionType" - ], - "properties": { - "reportDefinitionName": { - "type": "string", - "minLength": 1, - "maxLength": 80, - "pattern": "[a-zA-Z]+", - "description": "Valid Report Definition Name", - "example": "TransactionDetailReportClass" - }, - "subscriptionType": { - "description": "The subscription type for which report definition is required. Valid values are CLASSIC and STANDARD.\nValid Values:\n - CLASSIC\n - STANDARD\n", - "type": "string" - }, - "reportName": { - "type": "string", - "minLength": 1, - "maxLength": 128, - "pattern": "[a-zA-Z0-9-_ ]+", - "example": "TransactionDetailReport_Daily_Classic" - }, - "reportMimeType": { - "type": "string", - "example": "application/xml", - "description": "Report Format \nValid Values:\n - application/xml\n - text/csv\n" - }, - "reportFrequency": { - "type": "string", - "description": "'The frequency for which subscription is created. For Standard we can have DAILY, WEEKLY and MONTHLY. But for Classic we will have only DAILY.'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\nValid Values:\n- 'DAILY'\n- 'WEEKLY'\n- 'MONTHLY'\n- 'USER_DEFINED'\n", - "example": "DAILY" - }, - "reportInterval": { - "type": "string", - "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", - "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" - }, - "timezone": { - "type": "string", - "description": "By Default the timezone for Standard subscription is PST. And for Classic subscription it will be GMT. If user provides any other time zone apart from PST for Standard subscription api should error out.", - "example": "America/Los_Angeles" - }, - "startTime": { - "type": "string", - "description": "The hour at which the report generation should start. It should be in hhmm format. By Default it will be 0000. The format is 24 hours format.", - "example": "0900" - }, - "startDay": { - "type": "integer", - "minimum": 1, - "maximum": 31, - "description": "This is the start day if the frequency is WEEKLY or MONTHLY. The value varies from 1-7 for WEEKLY and 1-31 for MONTHLY. For WEEKLY 1 means Sunday and 7 means Saturday. By default the value is 1." - }, - "subscriptionStatus": { - "type": "string", - "description": "The status for subscription which is either created or updated. By default it is ACTIVE.\nValid Values:\n - ACTIVE\n - INACTIVE\n", - "example": "ACTIVE" - } - } - } - } - ], - "responses": { - "200": { - "description": "Ok" - }, - "201": { - "description": "Created" - }, - "400": { - "description": "Invalid request", - "schema": { - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - } - } - }, - "x-example": { - "example0": { - "summary": "Create Classic/Standard Report Subscription", - "value": { - "reportDefinitionName": "TransactionRequestClass", - "subscriptionType": "CLASSIC" - } - } - } - } - }, - "/reporting/v3/notification-of-changes": { - "get": { - "tags": [ - "Notification Of Changes" - ], - "summary": "Get Notification of Changes", - "description": "Download the Notification of Change report. This report shows eCheck-related fields updated as a result of a response to an eCheck settlement transaction.\n", - "operationId": "getNotificationOfChangeReport", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "text/csv", - "application/xml", - "application/hal+json" - ] - } - }, - "x-queryParameterDefaults": { - "startTime": "2020-03-01T12:00:00Z", - "endTime": "2020-03-10T12:00:00Z" - }, - "produces": [ - "application/hal+json", - "text/csv", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3NotificationofChangesGet200Response", - "type": "object", - "properties": { - "notificationOfChanges": { - "type": "array", - "description": "List of Notification Of Change Info values", - "items": { - "type": "object", - "properties": { - "merchantReferenceNumber": { - "type": "string", - "example": "TC30877-10", - "description": "Merchant Reference Number" - }, - "transactionReferenceNumber": { - "type": "string", - "example": "55563", - "description": "Transaction Reference Number" - }, - "time": { - "type": "string", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "description": "Notification Of Change Date(ISO 8601 Extended)" - }, - "code": { - "type": "string", - "example": "TC30877-10", - "description": "Merchant Reference Number" - }, - "accountType": { - "type": "string", - "example": "Checking Account", - "description": "Account Type" - }, - "routingNumber": { - "type": "string", - "example": "123456789", - "description": "Routing Number" - }, - "accountNumber": { - "type": "string", - "example": "############1234", - "description": "Account Number" - }, - "consumerName": { - "type": "string", - "example": "Consumer Name", - "description": "Consumer Name" - } - }, - "description": "Notification Of Change" - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3NotificationofChangesGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "401": { - "description": "Unauthorized. Token provided is no more valid." - }, - "404": { - "description": "Report not found", - "schema": { - "title": "reportingV3NotificationofChangesGet404Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "500": { - "description": "Internal Server Error", - "schema": { - "title": "reportingV3NotificationofChangesGet500Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - } - } - } - }, - "/reporting/v3/purchase-refund-details": { - "get": { - "tags": [ - "Purchase And Refund Details" - ], - "summary": "Get Purchase and Refund Details", - "description": "Download the Purchase and Refund Details report. This report report includes all purchases and refund transactions, as well as all activities related to transactions resulting in an adjustment to the net proceeds.\n", - "operationId": "getPurchaseAndRefundDetails", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "text/csv", - "application/xml", - "application/hal+json" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2020-01-01T12:00:00Z", - "endTime": "2020-01-30T12:00:00Z", - "groupName": "groupName", - "paymentSubtype": "VI", - "viewBy": "requestDate", - "offset": "20", - "limit": "2000" - }, - "produces": [ - "application/hal+json", - "application/xml", - "text/csv" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "paymentSubtype", - "in": "query", - "description": "Payment Subtypes.\n - **ALL**: All Payment Subtypes\n - **VI** : Visa\n - **MC** : Master Card\n - **AX** : American Express\n - **DI** : Discover\n - **DP** : Pinless Debit\n", - "required": false, - "type": "string", - "default": "ALL" - }, - { - "name": "viewBy", - "in": "query", - "description": "View results by Request Date or Submission Date.\n - **requestDate** : Request Date\n - **submissionDate**: Submission Date\n", - "required": false, - "type": "string", - "default": "requestDate" - }, - { - "name": "groupName", - "in": "query", - "description": "Valid CyberSource Group Name.User can define groups using CBAPI and Group Management Module in EBC2. Groups are collection of organizationIds", - "required": false, - "type": "string" - }, - { - "name": "offset", - "in": "query", - "description": "Offset of the Purchase and Refund Results.", - "required": false, - "type": "integer", - "format": "int32" - }, - { - "name": "limit", - "in": "query", - "description": "Results count per page. Range(1-2000)", - "required": false, - "type": "integer", - "minimum": 1, - "maximum": 2000, - "default": 2000, - "format": "int32" - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3PurchaseRefundDetailsGet200Response", - "properties": { - "offset": { - "type": "integer" - }, - "limit": { - "type": "integer" - }, - "pageResults": { - "type": "integer" - }, - "requestDetails": { - "type": "array", - "description": "List of Request Info values", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "example": "12345678901234567890123456", - "description": "An unique identification number assigned by CyberSource to identify the submitted request." - }, - "cybersourceMerchantId": { - "type": "string", - "example": "Cybersource Merchant Id", - "description": "Cybersource Merchant Id" - }, - "processorMerchantId": { - "type": "string", - "example": "Processor Merchant Id", - "description": "Cybersource Processor Merchant Id" - }, - "groupName": { - "type": "string", - "example": "996411990498708810001", - "description": "Group Name" - }, - "transactionReferenceNumber": { - "type": "string", - "example": "RZ3J9WCS9J33", - "description": "Transaction Reference Number" - }, - "merchantReferenceNumber": { - "type": "string", - "example": "47882339", - "description": "Merchant Reference Number" - } - }, - "description": "Request Info Section" - } - }, - "settlements": { - "type": "array", - "description": "List of Settlement Info values", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "example": "12345678901234567890123456", - "description": "An unique identification number assigned by CyberSource to identify the submitted request." - }, - "transactionType": { - "type": "string", - "example": "Purchases", - "description": "Transaction Type" - }, - "submissionTime": { - "type": "string", - "example": "2017-10-01T10:10:10+05:00", - "description": "Submission Date", - "format": "date-time" - }, - "amount": { - "type": "string", - "example": "23.00", - "description": "Amount" - }, - "currencyCode": { - "type": "string", - "example": "USD", - "description": "Valid ISO 4217 ALPHA-3 currency code" - }, - "paymentMethod": { - "type": "string", - "example": "VISA", - "description": "payment method" - }, - "walletType": { - "type": "string", - "example": "V.me", - "description": "Solution Type (Wallet)" - }, - "paymentType": { - "type": "string", - "example": "credit card", - "description": "Payment Type" - }, - "accountSuffix": { - "type": "string", - "example": "0004", - "description": "Account Suffix" - }, - "cybersourceBatchTime": { - "type": "string", - "example": "2017-10-01T10:10:10+05:00", - "description": "Cybersource Batch Time", - "format": "date-time" - }, - "cybersourceBatchId": { - "type": "string", - "example": "123123123123123", - "description": "Cybersource Batch Id" - }, - "cardType": { - "type": "string", - "example": "null", - "description": "Card Type" - }, - "debitNetwork": { - "type": "string", - "example": "", - "description": "Debit Network" - } - } - } - }, - "authorizations": { - "type": "array", - "description": "List of Authorization Info values", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "example": "12345678901234567890123456", - "description": "An unique identification number assigned by CyberSource to identify the submitted request." - }, - "transactionReferenceNumber": { - "type": "string", - "example": "RZ3J9WCS9J27", - "description": "Authorization Transaction Reference Number" - }, - "time": { - "type": "string", - "example": "2017-10-01T10:10:10+05:00", - "description": "Authorization Date", - "format": "date-time" - }, - "authorizationRequestId": { - "type": "string", - "example": "12345678901234567890123459", - "description": "Authorization Request Id" - }, - "amount": { - "type": "string", - "example": "2.50", - "description": "Authorization Amount" - }, - "currencyCode": { - "type": "string", - "example": "USD", - "description": "Valid ISO 4217 ALPHA-3 currency code" - }, - "code": { - "type": "string", - "example": "160780", - "description": "Authorization Code" - }, - "rcode": { - "type": "string", - "example": "1", - "description": "Authorization RCode" - } - }, - "description": "Authorization Info Values" - } - }, - "feeAndFundingDetails": { - "type": "array", - "description": "List of Fee Funding Info values", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "maxLength": 26, - "example": "12345678901234567890123456", - "description": "An unique identification number assigned by CyberSource to identify the submitted request." - }, - "interchangePerItemFee": { - "type": "string", - "example": "2.7", - "description": "interchange Per Item Fee" - }, - "interchangeDescription": { - "type": "string", - "example": "Visa International Assessments (Enhanced)", - "description": "interchange Description" - }, - "interchangePercentage": { - "type": "string", - "example": "0.25", - "description": "interchange Percentage" - }, - "interchangePercentageAmount": { - "type": "string", - "example": "-3.7500", - "description": "interchange Percentage Amount" - }, - "discountPercentage": { - "type": "string", - "example": "2.39", - "description": "Discount Percentage" - }, - "discountAmount": { - "type": "string", - "example": "0.429", - "description": "Discount Amount" - }, - "discountPerItemFee": { - "type": "string", - "example": "0.002", - "description": "Discount Per Item Fee" - }, - "totalFee": { - "type": "string", - "example": "0.429", - "description": "Total Fee" - }, - "feeCurrency": { - "type": "string", - "example": "1", - "description": "Fee Currency" - }, - "duesAssessments": { - "type": "string", - "example": "0", - "description": "Dues Assessments" - }, - "fundingAmount": { - "type": "string", - "example": "2.50", - "description": "Funding Amount" - }, - "fundingCurrency": { - "type": "string", - "example": "USD", - "description": "Funding Currency (ISO 4217)" - } - }, - "description": "Fee Funding Section" - } - }, - "others": { - "type": "array", - "description": "List of Other Info values", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "maxLength": 26, - "example": "12345678901234567890123456", - "description": "An unique identification number assigned by CyberSource to identify the submitted request." - }, - "merchantData1": { - "type": "string", - "example": "Merchant Defined Data", - "description": "Merchant Defined Data" - }, - "merchantData2": { - "type": "string", - "example": "Merchant Defined Data", - "description": "Merchant Defined Data" - }, - "merchantData3": { - "type": "string", - "example": "Merchant Defined Data", - "description": "Merchant Defined Data" - }, - "merchantData4": { - "type": "string", - "example": "Merchant Defined Data", - "description": "Merchant Defined Data" - }, - "firstName": { - "type": "string", - "example": "First Name", - "description": "First Name" - }, - "lastName": { - "type": "string", - "example": "Last Name", - "description": "Last Name" - } - }, - "description": "Other Merchant Details Values." - } - }, - "settlementStatuses": { - "type": "array", - "description": "List of Settlement Status Info values", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "maxLength": 26, - "example": "12345678901234567890123456", - "description": "An unique identification number assigned by CyberSource to identify the submitted request." - }, - "status": { - "type": "string", - "example": "Settlement Status", - "description": "Settlement Status" - }, - "settlementTime": { - "type": "string", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "description": "Settlement Date" - }, - "reasonCode": { - "example": "reasonCode", - "type": "string", - "description": "ReasonCode" - }, - "errorText": { - "example": "errorText", - "type": "string", - "description": "errorText" - } - }, - "description": "Settlement Status Section Values." - } - } - }, - "type": "object" - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3PurchaseRefundDetailsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "401": { - "description": "Unauthorized", - "schema": { - "title": "reportingV3PurchaseRefundDetailsGet401Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Report not found", - "schema": { - "title": "reportingV3PurchaseRefundDetailsGet404Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "500": { - "description": "Internal Server Error", - "schema": { - "title": "reportingV3PurchaseRefundDetailsGet500Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - }, - "examples": { - "application/json": { - "code": "SERVER_ERROR", - "correlationId": null, - "detail": "Internal Server Error. Please contact the customer support.", - "localizationKey": "cybsapi.server.error", - "message": "Error encountered while processing request" - } - } - } - } - } - }, - "/reporting/v3/payment-batch-summaries": { - "get": { - "tags": [ - "Payment Batch Summaries" - ], - "summary": "Get Payment Batch Summary Data", - "description": "Scope can be either account/merchant or reseller.", - "operationId": "getPaymentBatchSummary", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "text/csv", - "application/xml", - "application/hal+json" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-05-01T12:00:00Z", - "endTime": "2019-08-30T12:00:00Z" - }, - "produces": [ - "application/hal+json", - "text/csv", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "rollUp", - "in": "query", - "description": "Conditional - RollUp for data for day/week/month. Required while getting breakdown data for a Merchant", - "required": false, - "type": "string" - }, - { - "name": "breakdown", - "in": "query", - "description": "Conditional - Breakdown on account_rollup/all_merchant/selected_merchant. Required while getting breakdown data for a Merchant.", - "required": false, - "type": "string" - }, - { - "name": "startDayOfWeek", - "in": "query", - "description": "Optional - Start day of week to breakdown data for weeks in a month", - "required": false, - "type": "integer", - "format": "int32", - "minimum": 1, - "maximum": 7 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3PaymentBatchSummariesGet200Response", - "type": "object", - "properties": { - "startTime": { - "type": "string", - "format": "date-time" - }, - "endTime": { - "type": "string", - "format": "date-time" - }, - "paymentBatchSummaries": { - "type": "array", - "items": { - "type": "object", - "properties": { - "currencyCode": { - "type": "string", - "example": "USD" - }, - "paymentSubTypeDescription": { - "type": "string", - "example": "Diners Club" - }, - "startTime": { - "type": "string", - "format": "date-time" - }, - "endTime": { - "type": "string", - "format": "date-time" - }, - "salesCount": { - "type": "integer", - "example": 10, - "format": "int32" - }, - "salesAmount": { - "type": "string", - "example": "5000.01" - }, - "creditCount": { - "type": "integer", - "example": 10, - "format": "int32" - }, - "creditAmount": { - "type": "string", - "example": "5000.01" - }, - "accountName": { - "type": "string", - "example": "ubmerchant296" - }, - "accountId": { - "type": "string", - "example": "ubmerchant296_acct" - }, - "merchantId": { - "type": "string", - "example": "ubmerchant296_3" - }, - "merchantName": { - "type": "string", - "example": "ubmerchant296_3" - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3PaymentBatchSummariesGet200Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Payment Batch Summary not found" - } - } - } - }, - "/reporting/v3/conversion-details": { - "get": { - "tags": [ - "Conversion Details" - ], - "summary": "Get Conversion Detail Transactions", - "description": "Get conversion detail of transactions for a merchant.", - "operationId": "getConversionDetail", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "startTime": "2019-03-21T00:00:00Z", - "endTime": "2019-03-21T23:00:00Z", - "organizationId": "testrest" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "title": "reportingV3ConversionDetailsGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id", - "example": "testMerchantId", - "xml": { - "name": "MerchantID", - "attribute": true - } - }, - "startTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ReportStartDate", - "attribute": true - } - }, - "endTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ReportEndDate", - "attribute": true - } - }, - "conversionDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "merchantReferenceNumber": { - "type": "string", - "description": "Merchant reference number of a merchant", - "example": "1234567890", - "xml": { - "name": "MerchantReferenceNumber", - "attribute": true - } - }, - "conversionTime": { - "type": "string", - "format": "date-time", - "description": "Date of conversion", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ConversionDate", - "attribute": true - } - }, - "requestId": { - "type": "string", - "description": "Cybersource Transation request id", - "example": "1234567890123456789012", - "xml": { - "name": "RequestID", - "attribute": true - } - }, - "originalDecision": { - "type": "string", - "description": "Original decision", - "example": "REVIEW", - "xml": { - "name": "OriginalDecision" - } - }, - "newDecision": { - "type": "string", - "description": "New decision", - "example": "ACCEPT", - "xml": { - "name": "NewDecision" - } - }, - "reviewer": { - "type": "string", - "description": "User name of the reviewer", - "example": "testuserId", - "xml": { - "name": "Reviewer" - } - }, - "reviewerComments": { - "type": "string", - "description": "Comments of the reviewer", - "example": "Verified order.", - "xml": { - "name": "ReviewerComments" - } - }, - "queue": { - "type": "string", - "description": "Name of the queue", - "example": "Review Queue", - "xml": { - "name": "Queue" - } - }, - "profile": { - "type": "string", - "description": "Name of the profile", - "example": "Test Profile", - "xml": { - "name": "Profile" - } - }, - "notes": { - "type": "array", - "items": { - "type": "object", - "properties": { - "time": { - "type": "string", - "format": "date-time", - "description": "Time of the note added by reviewer", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "Date", - "attribute": true - } - }, - "addedBy": { - "type": "string", - "description": "Note added by reviewer", - "example": "testuserId", - "xml": { - "name": "AddedBy", - "attribute": true - } - }, - "comments": { - "type": "string", - "description": "Comments given by the reviewer", - "example": "Verified the order and accepted.", - "xml": { - "name": "Comment", - "attribute": true - } - } - }, - "xml": { - "name": "Note" - } - }, - "xml": { - "name": "Notes" - } - } - }, - "xml": { - "name": "Conversion" - } - } - } - }, - "xml": { - "name": "Report" - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3ConversionDetailsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "404": { - "description": "Conversion detail not found", - "schema": { - "title": "reportingV3ConversionDetailsGet404Response" - } - } - } - } - }, - "/reporting/v3/net-fundings": { - "get": { - "tags": [ - "Net Fundings" - ], - "summary": "Get Netfunding Information for an Account or a Merchant", - "description": "Get Netfunding information for an account or a merchant.", - "operationId": "getNetFundingDetails", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-08-01T00:00:00Z", - "endTime": "2019-09-01T23:59:59Z" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "groupName", - "in": "query", - "description": "Valid CyberSource Group Name.", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3NetFundingsGet200Response", - "type": "object", - "properties": { - "startTime": { - "type": "string", - "description": "Valid report Start Date in **ISO 8601 format**.\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example:**\n- yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "attribute": true - } - }, - "endTime": { - "type": "string", - "description": "Valid report End Date in **ISO 8601 format**\n**Example date format:**\n- yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", - "example": "2018-04-12T23:20:50.52Z", - "format": "date-time", - "xml": { - "attribute": true - } - }, - "netFundingSummaries": { - "type": "array", - "description": "List of Netfunding summary objects", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "Valid values:\n- PURCHASES\n- REFUNDS\n- FEES\n- CHARGEBACKS\n", - "example": "PURCHASES" - }, - "paymentSubType": { - "type": "string", - "example": "VI" - }, - "conveyedCount": { - "type": "integer", - "example": 10 - }, - "conveyedAmount": { - "type": "string", - "example": "100.50" - }, - "settledCount": { - "type": "integer", - "example": 10 - }, - "fundedCount": { - "type": "integer", - "example": 10 - }, - "fundedAmount": { - "type": "string", - "example": "150.50" - }, - "currencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - } - }, - "xml": { - "name": "NetFundingSummary" - } - }, - "xml": { - "name": "NetFundingSummaries", - "wrapped": true - } - }, - "totalPurchases": { - "type": "array", - "description": "List of total purchases currency wise", - "items": { - "type": "object", - "required": [ - "currency", - "value" - ], - "properties": { - "currency": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "value": { - "type": "string", - "example": "10.01" - } - }, - "xml": { - "name": "Amount" - } - }, - "xml": { - "name": "totalPurchases", - "wrapped": true - } - }, - "totalRefunds": { - "type": "array", - "description": "List of total refunds currency wise", - "items": { - "type": "object", - "required": [ - "currency", - "value" - ], - "properties": { - "currency": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "value": { - "type": "string", - "example": "10.01" - } - }, - "xml": { - "name": "Amount" - } - }, - "xml": { - "name": "totalRefunds", - "wrapped": true - } - }, - "totalFees": { - "type": "array", - "description": "List of total fees currency wise", - "items": { - "type": "object", - "required": [ - "currency", - "value" - ], - "properties": { - "currency": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "value": { - "type": "string", - "example": "10.01" - } - }, - "xml": { - "name": "Amount" - } - }, - "xml": { - "name": "totalFees", - "wrapped": true - } - }, - "totalChargebacks": { - "type": "array", - "description": "List of total chargebacks currency wise", - "items": { - "type": "object", - "required": [ - "currency", - "value" - ], - "properties": { - "currency": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "value": { - "type": "string", - "example": "10.01" - } - }, - "xml": { - "name": "Amount" - } - }, - "xml": { - "name": "totalChargebacks", - "wrapped": true - } - }, - "netTotal": { - "type": "array", - "description": "List of new total currency wise", - "items": { - "type": "object", - "required": [ - "currency", - "value" - ], - "properties": { - "currency": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "value": { - "type": "string", - "example": "10.01" - } - }, - "xml": { - "name": "Amount" - } - }, - "xml": { - "name": "netTotal", - "wrapped": true - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "reportingV3NetFundingsGet400Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - } - }, - "401": { - "description": "Unauthorized", - "schema": { - "title": "reportingV3NetFundingsGet401Response" - } - }, - "403": { - "description": "Forbidden", - "schema": { - "title": "reportingV3NetFundingsGet403Response" - } - }, - "404": { - "description": "Report not found", - "schema": { - "title": "reportingV3NetFundingsGet404Response" - } - }, - "500": { - "description": "Internal Server Error", - "schema": { - "title": "reportingV3NetFundingsGet500Response", - "type": "object", - "required": [ - "submitTimeUtc", - "reason", - "message", - "details" - ], - "properties": { - "submitTimeUtc": { - "type": "string", - "format": "date-time", - "description": "Time of request in UTC. \n", - "example": "2016-08-11T22:47:57Z" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n", - "example": "INVALID_DATA" - }, - "message": { - "type": "string", - "description": "Short descriptive message to the user.\n", - "example": "One or more fields contains invalid data" - }, - "details": { - "type": "array", - "description": "Error field list\n", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "Field in request that caused an error\n" - }, - "reason": { - "type": "string", - "description": "Documented reason code\n" - } - }, - "description": "Provides failed validation input field detail\n" - } - } - }, - "description": "HTTP status code for client application" - }, - "examples": { - "application/json": { - "code": "SERVER_ERROR", - "correlationId": null, - "detail": null, - "fields": [], - "localizationKey": "cybsapi.server.error", - "message": "Error encountered while processing request" - } - } - } - } - } - }, - "/reporting/v3/dtds/{reportDefinitionNameVersion}": { - "get": { - "tags": [ - "Download DTD" - ], - "summary": "Download DTD for Report", - "description": "Used to download DTDs for reports on no-auth.", - "operationId": "getDTDV2", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "isClientSideApi": true - }, - "produces": [ - "application/xml-dtd" - ], - "parameters": [ - { - "name": "reportDefinitionNameVersion", - "in": "path", - "description": "Name and version of DTD file to download. Some DTDs only have one version. In that case version name is not needed. Some example values are ctdr-1.0, tdr, pbdr-1.1", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Ok" - }, - "400": { - "description": "Bad request. DTD file name may be invalid" - }, - "404": { - "description": "DTD file not found" - }, - "500": { - "description": "Internal Server Error" - } - } - } - }, - "/reporting/v3/xsds/{reportDefinitionNameVersion}": { - "get": { - "tags": [ - "Download XSD" - ], - "summary": "Download XSD for Report", - "description": "Used to download XSDs for reports on no-auth.", - "operationId": "getXSDV2", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "isClientSideApi": true - }, - "produces": [ - "text/xml" - ], - "parameters": [ - { - "name": "reportDefinitionNameVersion", - "in": "path", - "description": "Name and version of XSD file to download. Some XSDs only have one version. In that case version name is not needed. Some example values are DecisionManagerDetailReport, DecisionManagerTypes", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Ok" - }, - "400": { - "description": "Bad request. XSD file name may be invalid" - }, - "404": { - "description": "XSD file not found" - }, - "500": { - "description": "Internal Server Error" - } - } - } - }, - "/reporting/v3/chargeback-summaries": { - "get": { - "tags": [ - "Chargeback Summaries" - ], - "summary": "Get Chargeback Summaries", - "description": "Chargeback Summary Report Description", - "operationId": "getChargebackSummaries", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "accessLevel": "code", - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-08-01T00:00:00Z", - "endTime": "2019-09-01T23:59:59Z" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3ChargebackSummariesGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Organization Id", - "example": "testrest", - "xml": { - "name": "MerchantId", - "attribute": true - } - }, - "startTime": { - "type": "string", - "description": "Report Start Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "name": "ReportStartDate", - "attribute": true - } - }, - "endTime": { - "type": "string", - "description": "Report Start Date", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ReportEndDate", - "attribute": true - } - }, - "chargebackSummaries": { - "type": "array", - "description": "List of Summary values", - "items": { - "type": "object", - "properties": { - "count": { - "type": "number", - "description": "Chargeback summary list count", - "example": "8" - }, - "time": { - "type": "string", - "description": "Summary Date", - "example": "2018-01-04T11:33:06.000-0800", - "format": "date-time" - }, - "accountId": { - "type": "string", - "description": "Account Id", - "example": "testrest_acct" - } - }, - "xml": { - "name": "Request", - "wrapped": true - } - } - } - }, - "xml": { - "name": "Report", - "wrapped": true - } - } - } - } - } - }, - "/reporting/v3/chargeback-details": { - "get": { - "tags": [ - "Chargeback Details" - ], - "summary": "Get Chargeback Details", - "description": "Chargeback Detail Report Description", - "operationId": "getChargebackDetails", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "accessLevel": "code", - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-08-01T00:00:00Z", - "endTime": "2019-09-01T23:59:59Z" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3ChargebackDetailsGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Organization Id", - "example": "testrest", - "xml": { - "name": "MerchantId", - "attribute": true - } - }, - "startTime": { - "type": "string", - "description": "Report Start Date (ISO 8601 Extended)", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "name": "ReportStartDate", - "attribute": true - } - }, - "endTime": { - "type": "string", - "description": "Report Start Date (ISO 8601 Extended)", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "name": "ReportEndDate", - "attribute": true - } - }, - "chargebackDetails": { - "type": "array", - "description": "List of Chargeback Details list.", - "items": { - "type": "object", - "properties": { - "processorMerchantId": { - "type": "string", - "description": "Processor Merchant Id", - "example": "174263416896" - }, - "merchantName": { - "type": "string", - "description": "Merchant Name", - "example": "Revolutionary Entertainment Inc" - }, - "transactionReferenceNumber": { - "type": "string", - "description": "Transaction Reference Number", - "example": "93983883073" - }, - "merchantReferenceNumber": { - "type": "string", - "description": "Merchant Reference Number", - "example": "X03434388DEADBEEF" - }, - "natureOfDispute": { - "type": "string", - "description": "Nature of Dispute", - "example": "Chargeback" - }, - "alertType": { - "type": "string", - "description": "Chargeback Alert Type", - "example": "2" - }, - "amount": { - "type": "string", - "description": "Chargeback Amount", - "example": "5" - }, - "sign": { - "type": "string", - "description": "Chargeback Sign", - "example": "C" - }, - "action": { - "type": "string", - "description": "Chargeback Action", - "example": "3" - }, - "cardType": { - "type": "string", - "description": "Card Type", - "example": "American Express" - }, - "originalSettlementTime": { - "type": "string", - "description": "Original Settlement Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "trackingNumber": { - "type": "string", - "description": "Tracking Number", - "example": "990175" - }, - "currencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "requestId": { - "type": "string", - "description": "Request Id", - "example": "5060113732046412501541" - }, - "responseDueTime": { - "type": "string", - "description": "Response Due Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "time": { - "type": "string", - "description": "Chargeback Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "actionDescription": { - "type": "string", - "description": "Chargeback Action Description", - "example": "Financial transaction" - }, - "customerId": { - "type": "string", - "description": "Customer Id", - "example": "937999JFK" - }, - "reasonCode": { - "type": "string", - "description": "Chargeback Reason Code", - "example": "1050" - }, - "representmentCPTime": { - "type": "string", - "description": "Representment CP Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "applications": { - "type": "string", - "description": "ICS Request Applications", - "example": "ics_bill" - }, - "eventRequestedTime": { - "type": "string", - "description": "Event Request Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "preDisputeFlag": { - "type": "string", - "description": "Pre Dispute Flag", - "example": "N" - } - }, - "xml": { - "name": "Request", - "wrapped": true - } - } - } - }, - "xml": { - "name": "Report", - "wrapped": true - } - } - } - } - } - }, - "/reporting/v3/retrieval-summaries": { - "get": { - "tags": [ - "Retrieval Summaries" - ], - "summary": "Get Retrieval Summaries", - "description": "Retrieval Summary Report Description", - "operationId": "getRetrievalSummary", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "accessLevel": "code", - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-08-01T00:00:00Z", - "endTime": "2019-09-01T23:59:59Z" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3RetrievalSummariesGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Organization Id", - "example": "testrest", - "xml": { - "name": "MerchantId", - "attribute": true - } - }, - "startTime": { - "type": "string", - "description": "Report Start Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "name": "ReportStartDate", - "attribute": true - } - }, - "endTime": { - "type": "string", - "description": "Report Start Date", - "example": "2017-10-01T10:10:10+05:00", - "xml": { - "name": "ReportEndDate", - "attribute": true - } - }, - "retrievalSummaries": { - "type": "array", - "description": "List of Summary values", - "items": { - "type": "object", - "properties": { - "count": { - "type": "number", - "description": "Chargeback summary list count", - "example": "8" - }, - "time": { - "type": "string", - "description": "Summary Date", - "example": "2018-01-04T11:33:06.000-0800", - "format": "date-time" - }, - "accountId": { - "type": "string", - "description": "Account Id", - "example": "testrest_acct" - } - }, - "xml": { - "name": "Request", - "wrapped": true - } - } - } - }, - "xml": { - "name": "Report", - "wrapped": true - } - } - } - } - } - }, - "/reporting/v3/retrieval-details": { - "get": { - "tags": [ - "Retrieval Details" - ], - "summary": "Get Retrieval Details", - "description": "Retrieval Detail Report Description", - "operationId": "getRetrievalDetails", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "accessLevel": "code", - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-08-01T00:00:00Z", - "endTime": "2019-09-01T23:59:59Z" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3RetrievalDetailsGet200Response", - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "Organization Id", - "example": "testrest", - "xml": { - "name": "MerchantId", - "attribute": true - } - }, - "startTime": { - "type": "string", - "description": "Report Start Date (ISO 8601 Extended)", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "name": "ReportStartDate", - "attribute": true - } - }, - "endTime": { - "type": "string", - "description": "Report Start Date (ISO 8601 Extended)", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time", - "xml": { - "name": "ReportEndDate", - "attribute": true - } - }, - "retrievalDetails": { - "type": "array", - "description": "List of Retrieval Details list.", - "items": { - "type": "object", - "properties": { - "processorMerchantId": { - "type": "string", - "description": "Processor Merchant Id", - "example": "174263416896" - }, - "merchantName": { - "type": "string", - "description": "Merchant Name", - "example": "ZZZZZZ USA_EUR" - }, - "transactionReferenceNumber": { - "type": "string", - "description": "Transaction Reference Number", - "example": "02230413" - }, - "merchantReferenceNumber": { - "type": "string", - "description": "Merchant Reference Number", - "example": "123" - }, - "natureOfDispute": { - "type": "string", - "description": "Nature of Dispute", - "example": "Retrieval" - }, - "alertType": { - "type": "string", - "description": "Retrieval Alert Type", - "example": "2" - }, - "amount": { - "type": "string", - "description": "Retrieval Amount", - "example": "5" - }, - "sign": { - "type": "string", - "description": "Retrieval Sign", - "example": "C" - }, - "action": { - "type": "string", - "description": "Retrieval Action", - "example": "3" - }, - "cardType": { - "type": "string", - "description": "Card Type", - "example": "American Express" - }, - "originalSettlementTime": { - "type": "string", - "description": "Original Settlement Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "trackingNumber": { - "type": "string", - "description": "Tracking Number", - "example": "990175" - }, - "currencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "requestId": { - "type": "string", - "description": "Request Id", - "example": "5060113732046412501541" - }, - "responseDueTime": { - "type": "string", - "description": "Response Due Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "time": { - "type": "string", - "description": "Retrieval Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "actionDescription": { - "type": "string", - "description": "Retrieval Action Description", - "example": "Financial transaction" - }, - "customerId": { - "type": "string", - "description": "Customer Id", - "example": "Customer Id" - }, - "reasonCode": { - "type": "string", - "description": "Retrieval Reason Code", - "example": "1050" - }, - "representmentCPTime": { - "type": "string", - "description": "Representment CP Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "applications": { - "type": "string", - "description": "ICS Request Applications", - "example": "ics_auth" - }, - "eventRequestedTime": { - "type": "string", - "description": "Event Request Date", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - } - }, - "xml": { - "name": "Request", - "wrapped": true - } - } - } - }, - "xml": { - "name": "Report", - "wrapped": true - } - } - } - } - } - }, - "/reporting/v3/interchange-clearing-level-details": { - "get": { - "tags": [ - "Interchange Clearing Level Details" - ], - "summary": "Interchange Clearing Level data for an account or a merchant", - "description": "Interchange Clearing Level data for an account or a merchant", - "operationId": "getInterchangeClearingLevelDetails", - "x-devcenter-metaData": { - "categoryTag": "Reporting", - "enableDownload": true, - "accessLevel": "code", - "x-custom-headers": { - "accept": [ - "application/hal+json", - "application/xml" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startTime": "2019-08-01T00:00:00Z", - "endTime": "2019-09-01T23:59:59Z" - }, - "produces": [ - "application/hal+json", - "application/xml" - ], - "parameters": [ - { - "name": "startTime", - "in": "query", - "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "endTime", - "in": "query", - "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", - "required": true, - "type": "string", - "format": "date-time" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "reportingV3InterchangeClearingLevelDetailsGet200Response", - "type": "object", - "properties": { - "startDate": { - "type": "string", - "description": "Valid report Start Date in **ISO 8601 format**.\nPlease refer the following link to know more about ISO 8601 format.\n- https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14\n\n**Example:**\n- yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "Valid report Start Date in **ISO 8601 format**.\n", - "example": "2017-10-01T10:10:10+05:00", - "format": "date-time" - }, - "interchangeClearingLevelDetails": { - "type": "array", - "description": "List of InterchangeClearingLevelDetail", - "items": { - "type": "object", - "properties": { - "requestId": { - "type": "string", - "example": "5166566062346232701541" - }, - "organizationId": { - "type": "string", - "example": "testrest" - }, - "accountId": { - "type": "string", - "example": "testrest_acct" - }, - "processorMerchantId": { - "type": "string", - "example": "174180221999" - }, - "transactionReferenceNumber": { - "type": "string", - "example": "21339480" - }, - "merchantReferenceNumber": { - "type": "string", - "example": "33557799" - }, - "accountSuffix": { - "type": "string", - "example": "2393" - }, - "paymentSubType": { - "type": "string", - "example": "VI" - }, - "paymentSubTypeDescription": { - "type": "string", - "example": "Visa" - }, - "transactionTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "processedTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "transactionType": { - "type": "string", - "example": "Sale" - }, - "amount": { - "type": "string", - "example": "90.50" - }, - "currencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "priceType": { - "type": "string", - "example": "077" - }, - "priceAmountOne": { - "type": "string", - "example": "0.018" - }, - "priceAmountTwo": { - "type": "string", - "example": "0.1" - }, - "reClass": { - "type": "string", - "example": "0" - }, - "settlementTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "settlementProcessor": { - "type": "string", - "example": "fdiglobal" - }, - "merchantBatchNumber": { - "type": "string", - "example": "000000037800" - }, - "clearedLevel": { - "type": "string", - "example": "REG" - }, - "billbackReasonCode": { - "type": "string", - "example": "VI" - }, - "billbackReasonDescription": { - "type": "string", - "example": "B278-TRANSACTION CLEARED AS REGULATED" - }, - "merchantPricedLevel": { - "type": "string", - "example": "1.72" - }, - "discountRate": { - "type": "string", - "example": "0.0" - }, - "discountAmount": { - "type": "string", - "example": "0.0" - }, - "clearingRateAmountOne": { - "type": "string", - "example": "0.005" - }, - "clearingRateAmountTwo": { - "type": "string", - "example": "0.22" - }, - "clearingRateAmountThree": { - "type": "string", - "example": "0.0" - }, - "clearingRateCurrencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "interchangeAmount": { - "type": "string", - "example": "0.27" - }, - "billbackAmount": { - "type": "string", - "example": "-1.46" - }, - "settlementAmount": { - "type": "string", - "example": "1.23" - }, - "settlementCurrencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "conversionRate": { - "type": "string", - "example": "1.0" - }, - "deltaCost": { - "type": "string", - "example": "5.0" - }, - "surchargeAmount": { - "type": "string", - "example": "5.0" - }, - "percentRateCharged": { - "type": "string", - "example": "5.5" - }, - "perTransactionCharged": { - "type": "string", - "example": "5.0" - }, - "downgradeReasonCode": { - "type": "string", - "example": "1" - }, - "processTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "authCode": { - "type": "string", - "example": "012628" - }, - "batchTime": { - "type": "string", - "format": "date-time", - "example": "2017-10-01T10:10:10+05:00" - }, - "processorBatchNumber": { - "type": "string", - "example": "00001" - }, - "cardIndicator": { - "type": "string", - "example": "P" - }, - "minimumUnit": { - "type": "integer", - "example": 1 - }, - "minimumUnitCurrencyCode": { - "type": "string", - "description": "Valid ISO 4217 ALPHA-3 currency code", - "example": "USD" - }, - "creditDeltaIndicator": { - "type": "string", - "example": "N" - }, - "feeCategory": { - "type": "string", - "example": "A" - }, - "applicationName": { - "type": "string", - "example": "ics_auth" - } - }, - "xml": { - "name": "Request" - } - } - } - }, - "xml": { - "name": "Report" - } - } - } - } - } - }, - "/sfs/v1/file-details": { - "get": { - "tags": [ - "SecureFileShare" - ], - "summary": "Get List of Files", - "description": "Get list of files and it's information of them available inside the report directory", - "operationId": "getFileDetail", - "x-devcenter-metaData": { - "categoryTag": "Secure_File_Share", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-secure-file-share-api-102718/secure_file_share_api_intro.html" - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "startDate": "2019-10-20", - "endDate": "2020-01-01", - "name": "" - }, - "produces": [ - "application/hal+json" - ], - "consumes": [ - "*/*;charset=utf-8" - ], - "parameters": [ - { - "name": "startDate", - "in": "query", - "description": "Valid start date in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd\n", - "required": true, - "type": "string", - "format": "date" - }, - { - "name": "endDate", - "in": "query", - "description": "Valid end date in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd\n", - "required": true, - "type": "string", - "format": "date" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Cybersource Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - }, - { - "name": "name", - "in": "query", - "description": "**Tailored to searches for specific files with in given Date range**\nexample : MyTransactionDetailreport.xml\n", - "pattern": "[a-zA-Z0-9-_\\.]+", - "required": false, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Ok", - "schema": { - "title": "V1FileDetailsGet200Response", - "type": "object", - "properties": { - "fileDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "fileId": { - "type": "string", - "description": "Unique identifier of a file", - "example": "AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" - }, - "name": { - "type": "string", - "description": "Name of the file", - "example": "MyTransactionDetailreport.xml" - }, - "createdTime": { - "type": "string", - "format": "date-time", - "description": "Date and time for the file in PST", - "example": "2017-10-01T00:00:00+05:00" - }, - "lastModifiedTime": { - "type": "string", - "format": "date-time", - "description": "Date and time for the file in PST", - "example": "2017-10-01T00:00:00+05:00" - }, - "date": { - "type": "string", - "format": "date", - "description": "Date and time for the file in PST", - "example": "2017-10-05" - }, - "mimeType": { - "type": "string", - "description": "'File extension'\n\nValid values:\n- 'application/xml'\n- 'text/csv'\n- 'application/pdf'\n- 'application/octet-stream'\n", - "example": "application/xml" - }, - "size": { - "type": "number", - "description": "Size of the file in bytes", - "example": 2245397 - } - } - } - }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "example": "/sfs/v1/file-details?startDate=2018-01-01&endDate=2018-01-02" - }, - "method": { - "type": "string", - "example": "GET" - } - } - }, - "files": { - "type": "array", - "items": { - "type": "object", - "properties": { - "fileId": { - "type": "string", - "description": "Unique identifier for each file", - "example": "AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" - }, - "href": { - "type": "string", - "example": "/sfs/v1/files/AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" - }, - "method": { - "type": "string", - "example": "GET" - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request", - "schema": { - "title": "V1FilesGet400Response", - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - }, - "examples": { - "application/json": { - "code": "VALIDATION_ERROR", - "correlationId": null, - "detail": null, - "fields": [ - { - "path": "startTime", - "message": "Start date should not precede 18 months from current time in GMT", - "localizationKey": null - } - ], - "localizationKey": "cybsapi.validation.errors", - "message": "Field validation errors" - } - } - }, - "401": { - "description": "Ok", - "schema": { - "title": "V1FileDetailsGet401Response", - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - }, - "examples": { - "application/json": { - "code": "VALIDATION_ERROR", - "correlationId": null, - "detail": null, - "fields": [ - { - "path": "organizationId", - "message": "Organization doesn't has access to File details", - "localizationKey": null - } - ], - "localizationKey": "cybsapi.validation.errors", - "message": "Field validation errors" - } - } - }, - "404": { - "description": "Files Info not found", - "schema": { - "title": "V1FileDetailsGet404Response", - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - }, - "examples": { - "application/json": { - "code": "RESOURCE_NOTFOUND", - "correlationId": null, - "detail": "The requested resource is not found. Please try again later.", - "localizationKey": "cybsapi.resource.notfound", - "message": "Files Info not found for requested input values" - } - } - }, - "500": { - "description": "Internal Server Error", - "schema": { - "title": "V1FileDetailsGet500Response", - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - }, - "examples": { - "application/json": { - "code": "SERVER_ERROR", - "correlationId": null, - "detail": "Internal Server Error. Please contact the customer support.", - "localizationKey": "cybsapi.server.error", - "message": "Error encountered while processing request" - } - } - } - } - } - }, - "/sfs/v1/files/{fileId}": { - "get": { - "tags": [ - "SecureFileShare" - ], - "summary": "Download a File with File Identifier", - "description": "Download a file for the given file identifier", - "operationId": "getFile", - "x-streaming": true, - "x-devcenter-metaData": { - "categoryTag": "Secure_File_Share", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-secure-file-share-api-102718/secure_file_share_api_intro.html", - "enableDownload": true, - "x-custom-headers": { - "accept": [ - "text/csv", - "application/xml", - "application/pdf" - ] - } - }, - "x-queryParameterDefaults": { - "organizationId": "testrest" - }, - "x-depends": { - "example": { - "path": "/sfs/v1/file-details", - "verb": "get", - "exampleId": "Get list of files" - }, - "fieldMapping": [ - { - "sourceField": "fileDetails[0].fileId", - "destinationField": "fileId", - "fieldTypeInDestination": "path" - } - ] - }, - "produces": [ - "application/xml", - "text/csv", - "application/pdf" - ], - "consumes": [ - "*/*;charset=utf-8" - ], - "parameters": [ - { - "name": "fileId", - "in": "path", - "description": "Unique identifier for each file", - "required": true, - "type": "string" - }, - { - "name": "organizationId", - "in": "query", - "description": "Valid Cybersource Organization Id", - "pattern": "[a-zA-Z0-9-_]+", - "required": false, - "type": "string", - "minLength": 1, - "maxLength": 32 - } - ], - "responses": { - "200": { - "description": "OK" - }, - "400": { - "description": "Invalid Request", - "schema": { - "type": "object", - "required": [ - "code", - "message" - ], - "properties": { - "code": { - "type": "string", - "description": "Error code" - }, - "message": { - "type": "string", - "description": "Error message" - }, - "localizationKey": { - "type": "string", - "description": "Localization Key Name" - }, - "correlationId": { - "type": "string", - "description": "Correlation Id" - }, - "detail": { - "type": "string", - "description": "Error Detail" - }, - "fields": { - "type": "array", - "description": "Error fields List", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "Path of the failed property" - }, - "message": { - "type": "string", - "description": "Error description about validation failed field" - }, - "localizationKey": { - "type": "string", - "description": "Localized Key Name" - } - }, - "description": "Provide validation failed input field details" - } - } - }, - "description": "Error Bean" - } - }, - "404": { - "description": "No Reports Found" - } - } - } - }, - "/invoicing/v2/invoices": { - "post": { - "tags": [ - "invoices" - ], - "summary": "Create a New Invoice", - "description": "Create a new invoice.", - "operationId": "createInvoice", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "createInvoiceRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "sendImmediately": { - "type": "boolean", - "description": "If set to `true`, we send the invoice immediately. If set to `false`, the invoice remains in draft mode." - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice, such as the amount and line item details.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - } - }, - "example": { - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "sendImmediately": true, - "allowPartialPayments": true, - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "unitPrice": "120.08", - "quantity": "21" - } - ] - } - } - } - } - ], - "responses": { - "201": { - "description": "Created.", - "schema": { - "title": "invoicingV2InvoicesPost201Response", - "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." - } - } - }, - "update": { - "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." - } - } - }, - "deliver": { - "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." - } - } - }, - "cancel": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "paymentLink": { - "type": "string", - "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/rest/v2/invoices/98753", - "method": "GET" - }, - "update": { - "href": "/rest/v2/invoices/98753", - "method": "PUT" - }, - "send": { - "href": "/rest/v2/invoices/98753/delivery", - "method": "POST" - }, - "cancel": { - "href": "/rest/v2/invoices/98753/cancelation", - "method": "POST" - } - }, - "id": "98753", - "submitTimeUtc": "2019-06-28T19:48:06Z", - "status": "SENT", - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "98753", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "allowPartialPayments": true, - "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "balanceAmount": "2623.64", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "quantity": "21", - "unitPrice": "120.08" - } - ] - } - } - } - }, - "202": { - "description": "Invoice created but failed to send an email. Send the invoice separately.", - "schema": { - "title": "invoicingV2InvoicesPost202Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n- ACCEPTED\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": { - "submitTimeUtc": "2019-06-28T20:21:48Z", - "status": "ACCEPTED", - "reason": "ACCEPTED", - "message": "Invoice ID 98753 created but failed to send an email. Send the invoice separately." - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "invoicingV2InvoicesPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "404": { - "description": "The specified resource is not found.", - "schema": { - "title": "invoicingV2InvoicesPost404Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { - "submitTimeUtc": "2019-07-01T21:36:29Z", - "status": "NOTFOUND", - "reason": "NOT_FOUND", - "message": "Invoice does not exist." - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoicesPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - }, - "x-example": { - "example0": { - "summary": "Create a draft invoice", - "value": { - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "sendImmediately": false, - "allowPartialPayments": true, - "deliveryMode": "none" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.00", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "unitPrice": "120.08", - "quantity": "21" - } - ] - } - } - }, - "example1": { - "summary": "Create and send the invoice immediately", - "value": { - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "sendImmediately": true, - "allowPartialPayments": true, - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "unitPrice": "120.08", - "quantity": "21" - } - ] - } - } - }, - "example2": { - "summary": "Create an invoice and assign it a specific invoice number", - "value": { - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "A123", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "sendImmediately": true, - "allowPartialPayments": true, - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "unitPrice": "120.08", - "quantity": "21" - } - ] - } - } - }, - "example3": { - "summary": "Create an invoice without sending it", - "value": { - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "A123", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "sendImmediately": true, - "allowPartialPayments": true, - "deliveryMode": "none" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "unitPrice": "120.08", - "quantity": "21" - } - ] - } - } - } - } - }, - "get": { - "tags": [ - "invoices" - ], - "summary": "Get a List of Invoices", - "description": "Get a list of invoices.", - "operationId": "getAllInvoices", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "offset", - "in": "query", - "type": "integer", - "required": true, - "description": "Page offset number." - }, - { - "name": "limit", - "in": "query", - "type": "integer", - "required": true, - "description": "Maximum number of items you would like returned." - }, - { - "name": "status", - "in": "query", - "type": "string", - "required": false, - "description": "The status of the invoice.\n\nPossible values:\n - DRAFT\n - CREATED\n - SENT\n - PARTIAL\n - PAID\n - CANCELED\n" - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoicesAllGet200Response", - "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." - } - } - }, - "next": { - "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." - } - } - }, - "previous": { - "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." - } - } - } - } - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "totalInvoices": { - "type": "integer" - }, - "invoices": { - "type": "array", - "items": { - "type": "object", - "description": "A list of invoices.", - "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." - } - } - }, - "update": { - "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." - } - } - }, - "deliver": { - "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." - } - } - }, - "cancel": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "customerInformation": { - "type": "object", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "properties": { - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields for a list of invoices.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/v2/invoices/?offset=1&limit=2&status=draft", - "method": "GET" - }, - "next": { - "href": "/v2/invoices/?offset=3&limit=2&status=draft", - "method": "GET" - }, - "previous": { - "href": "/v2/invoices/?offset=0&limit=2&status=draft", - "method": "GET" - } - }, - "submitTimeUtc": "2019-07-03T19:22:26Z", - "totalInvoices": 123, - "invoices": [ - { - "_links": { - "self": { - "href": "/v2/invoices/98772", - "method": "GET" - } - }, - "_supportedActions": [ - { - "href": "/v2/invoices/98772/delivery", - "method": "POST" - }, - { - "href": "/v2/invoices/98772", - "method": "PUT" - }, - { - "href": "/v2/invoices/98772/cancelation", - "method": "POST" - } - ], - "id": "98772", - "status": "DRAFT", - "customerInformation": { - "name": "Tanya Lee", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "dueDate": "2019-07-11" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "14249.56", - "currency": "USD" - } - } - }, - { - "_links": { - "self": { - "href": "/v2/invoices/98771", - "method": "GET" - } - }, - "_supportedActions": [ - { - "href": "/v2/invoices/98771/delivery", - "method": "POST" - }, - { - "href": "/v2/invoices/98771", - "method": "PUT" - }, - { - "href": "/v2/invoices/98771/cancelation", - "method": "POST" - } - ], - "id": "98771", - "status": "DRAFT", - "customerInformation": { - "name": "Tanya Lee", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "dueDate": "2019-07-11" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "14249.56", - "currency": "USD" - } - } - } - ] - } - } - }, - "400": { - "description": "Invalid invoice status. The status should be one of: `DRAFT`, `CREATED`, `SENT`, `PARTIAL`, `PAID`, or `CANCELED`.", - "schema": { - "title": "invoicingV2InvoicesAllGet400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "404": { - "description": "No invoices found.", - "schema": { - "title": "invoicingV2InvoicesAllGet404Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { - "submitTimeUtc": "2019-07-01T21:36:29Z", - "status": "NOTFOUND", - "reason": "NOT_FOUND", - "message": "Invoice does not exist." - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoicesAllGet502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - } - } - }, - "/invoicing/v2/invoices/{id}": { - "get": { - "tags": [ - "invoices" - ], - "summary": "Get Invoice Details", - "description": "Get the details of a specific invoice.", - "operationId": "getInvoice", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "id", - "in": "path", - "type": "string", - "description": "The invoice number.", - "required": true - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoicesGet200Response", - "example": { - "_links": { - "self": { - "href": "/rest/v2/invoices/A123", - "method": "GET" - } - }, - "supportedActions": [ - { - "href": "/rest/v2/invoices/A123/delivery", - "method": "POST" - }, - { - "href": "/rest/v2/invoices/A123", - "method": "PUT" - }, - { - "href": "/rest/v2/invoices/A123/cancelation", - "method": "POST" - } - ], - "id": "A123", - "submitTimeUtc": "2019-07-01T22:37:14Z", - "status": "SENT", - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "A123", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "allowPartialPayments": false, - "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "11955.45", - "currency": "USD", - "balanceAmount": "11843.71", - "discountAmount": "1402.60", - "discountPercent": "10.5", - "subAmount": "13358.05", - "minimumPartialAmount": "100.00", - "taxDetails": { - "type": "State Tax", - "amount": "1018.05", - "rate": "8.25" - }, - "freight": { - "amount": "40.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "quantity": "1000", - "unitPrice": "12.34" - } - ] - }, - "invoiceHistory": [ - { - "event": "PAYMENT", - "date": "2019-06-18T21:57:31.09Z", - "transactionDetails": { - "transactionId": "2155897958", - "amount": "111.74" - } - }, - { - "event": "RESEND", - "date": "2019-06-18T21:55:01.02Z" - }, - { - "event": "SEND", - "date": "2019-06-18T21:51:19.09Z" - }, - { - "event": "CREATE", - "date": "2019-06-18T21:51:18.76Z" - } - ] - }, - "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." - } - } - }, - "update": { - "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." - } - } - }, - "deliver": { - "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." - } - } - }, - "cancel": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "paymentLink": { - "type": "string", - "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - }, - "invoiceHistory": { - "type": "array", - "items": { - "type": "object", - "properties": { - "event": { - "type": "string", - "description": "The event triggered for the invoice.\n\nPossible values:\n - `CREATE`\n - `UPDATE`\n - `SEND`\n - `RESEND`\n - `REMINDER`\n - `PAYMENT`\n - `CANCEL`\n" - }, - "date": { - "type": "string", - "format": "date-time", - "description": "The date and time when the invoice event was triggered in ISO 8601 format. Format: YYYY-MM-DDThh:mm:ssZ\n" - }, - "transactionDetails": { - "description": "These details are only returned when the invoice event is `payment`.", - "type": "object", - "properties": { - "transactionId": { - "type": "string", - "description": "Payer auth Transaction identifier." - }, - "amount": { - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" - } - } - } - } - } - } - }, - "type": "object" - } - }, - "400": { - "description": "Invoicing service is not enabled.", - "schema": { - "title": "invoicingV2InvoicesGet400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "404": { - "description": "Invoice does not exist.", - "schema": { - "title": "invoicingV2InvoicesGet404Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { - "submitTimeUtc": "2019-07-01T21:36:29Z", - "status": "NOTFOUND", - "reason": "NOT_FOUND", - "message": "Invoice does not exist." - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoicesGet502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - } - }, - "put": { - "tags": [ - "invoices" - ], - "summary": "Update an Invoice", - "description": "Update an invoice.", - "operationId": "updateInvoice", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "id", - "in": "path", - "type": "string", - "description": "The invoice number.", - "required": true - }, - { - "name": "updateInvoiceRequest", - "in": "body", - "description": "Updating the invoice does not resend the invoice automatically. You must resend the invoice separately.", - "required": true, - "schema": { - "type": "object", - "properties": { - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains the updatable invoice information.", - "properties": { - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice, such as the amount and line item details.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - } - }, - "example": { - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "allowPartialPayments": true, - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "unitPrice": "120.08", - "quantity": "21" - } - ] - } - } - } - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoicesPut200Response", - "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." - } - } - }, - "update": { - "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." - } - } - }, - "deliver": { - "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." - } - } - }, - "cancel": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "paymentLink": { - "type": "string", - "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/rest/v2/invoices/98753", - "method": "GET" - }, - "update": { - "href": "/rest/v2/invoices/98753", - "method": "PUT" - }, - "send": { - "href": "/rest/v2/invoices/98753/delivery", - "method": "POST" - }, - "cancel": { - "href": "/rest/v2/invoices/98753/cancelation", - "method": "POST" - } - }, - "id": "98753", - "submitTimeUtc": "2019-06-28T19:48:06Z", - "status": "SENT", - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "98753", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "allowPartialPayments": true, - "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "balanceAmount": "2623.64", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "quantity": "21", - "unitPrice": "120.08" - } - ] - } - } - } - }, - "400": { - "description": "Field validation errors.", - "schema": { - "title": "invoicingV2InvoicesPut400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "404": { - "description": "Invoice does not exist.", - "schema": { - "title": "invoicingV2InvoicesPut404Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { - "submitTimeUtc": "2019-07-01T21:36:29Z", - "status": "NOTFOUND", - "reason": "NOT_FOUND", - "message": "Invoice does not exist." - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoicesPut502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - } - } - }, - "/invoicing/v2/invoices/{id}/delivery": { - "post": { - "tags": [ - "invoices" - ], - "summary": "Send an Invoice", - "description": "Send an invoice.", - "operationId": "performSendAction", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "id", - "in": "path", - "type": "string", - "description": "The invoice number.", - "required": true - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoicesSend200Response", - "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." - } - } - }, - "update": { - "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." - } - } - }, - "deliver": { - "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." - } - } - }, - "cancel": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "paymentLink": { - "type": "string", - "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/rest/v2/invoices/98753", - "method": "GET" - }, - "update": { - "href": "/rest/v2/invoices/98753", - "method": "PUT" - }, - "send": { - "href": "/rest/v2/invoices/98753/delivery", - "method": "POST" - }, - "cancel": { - "href": "/rest/v2/invoices/98753/cancelation", - "method": "POST" - } - }, - "id": "98753", - "submitTimeUtc": "2019-06-28T19:48:06Z", - "status": "SENT", - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "98753", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "allowPartialPayments": true, - "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "balanceAmount": "2623.64", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "quantity": "21", - "unitPrice": "120.08" - } - ] - } - } - } - }, - "400": { - "description": "Requested action is not allowed.", - "schema": { - "title": "invoicingV2InvoicesSend400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "404": { - "description": "Invoice does not exist.", - "schema": { - "title": "invoicingV2InvoicesSend404Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { - "submitTimeUtc": "2019-07-01T21:36:29Z", - "status": "NOTFOUND", - "reason": "NOT_FOUND", - "message": "Invoice does not exist." - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoicesSend502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - } - } - }, - "/invoicing/v2/invoices/{id}/cancelation": { - "post": { - "tags": [ - "invoices" - ], - "summary": "Cancel an Invoice", - "description": "Cancel an invoice.", - "operationId": "performCancelAction", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "id", - "in": "path", - "type": "string", - "description": "The invoice number.", - "required": true - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoicesCancel200Response", - "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." - } - } - }, - "update": { - "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." - } - } - }, - "deliver": { - "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." - } - } - }, - "cancel": { - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" - }, - "customerInformation": { - "type": "object", - "description": "Contains all of the customer-related fields for the invoice.", - "properties": { - "name": { - "type": "string", - "maxLength": 100, - "description": "Payer name for the invoice." - }, - "email": { - "type": "string", - "maxLength": 255, - "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" - }, - "merchantCustomerId": { - "type": "string", - "maxLength": 100, - "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" - } - } - }, - "invoiceInformation": { - "type": "object", - "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", - "properties": { - "invoiceNumber": { - "type": "string", - "description": "Invoice Number." - }, - "description": { - "type": "string", - "maxLength": 2000, - "description": "The description included in the invoice." - }, - "dueDate": { - "type": "string", - "maxLength": 10, - "format": "date", - "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" - }, - "allowPartialPayments": { - "type": "boolean", - "description": "If set to `true`, the payer can make a partial invoice payment." - }, - "paymentLink": { - "type": "string", - "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." - }, - "deliveryMode": { - "type": "string", - "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" - } - } - }, - "orderInformation": { - "type": "object", - "description": "Contains all of the order-related fields for the invoice.", - "properties": { - "amountDetails": { - "type": "object", - "description": "Contains all of the amount-related fields in the invoice.", - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "balanceAmount": { - "type": "string", - "maxLength": 12, - "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" - }, - "discountAmount": { - "type": "string", - "maxLength": 15, - "description": "Total discount amount applied to the order.\n" - }, - "discountPercent": { - "type": "number", - "maxLength": 7, - "description": "The total discount percentage applied to the invoice." - }, - "subAmount": { - "type": "number", - "maxLength": 25, - "description": "Sub-amount of the invoice." - }, - "minimumPartialAmount": { - "type": "number", - "description": "The minimum partial amount required to pay the invoice." - }, - "taxDetails": { - "type": "object", - "description": "Contains all of the tax-related fields for the invoice.", - "properties": { - "type": { - "type": "string", - "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - }, - "amount": { - "type": "string", - "maxLength": 13, - "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" - }, - "rate": { - "type": "string", - "maxLength": 6, - "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" - } - } - }, - "freight": { - "type": "object", - "description": "Contains all of the shipping-related fields for the invoice.", - "properties": { - "amount": { - "type": "string", - "maxLength": 13, - "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - }, - "taxable": { - "type": "boolean", - "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" - } - } - } - } - }, - "lineItems": { - "type": "array", - "maxItems": 30, - "items": { - "type": "object", - "description": "List of the line items from the order, which are included in an invoice.", - "properties": { - "productSku": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - } - } - } - } - } - } - }, - "example": { - "_links": { - "self": { - "href": "/rest/v2/invoices/98753", - "method": "GET" - }, - "update": { - "href": "/rest/v2/invoices/98753", - "method": "PUT" - }, - "send": { - "href": "/rest/v2/invoices/98753/delivery", - "method": "POST" - }, - "cancel": { - "href": "/rest/v2/invoices/98753/cancelation", - "method": "POST" - } - }, - "id": "98753", - "submitTimeUtc": "2019-06-28T19:48:06Z", - "status": "SENT", - "customerInformation": { - "name": "Tanya Lee", - "email": "tanya.lee@my-email.world", - "merchantCustomerId": "1234" - }, - "invoiceInformation": { - "invoiceNumber": "98753", - "description": "This is a test invoice", - "dueDate": "2019-07-11", - "allowPartialPayments": true, - "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", - "deliveryMode": "email" - }, - "orderInformation": { - "amountDetails": { - "totalAmount": "2623.64", - "currency": "USD", - "balanceAmount": "2623.64", - "discountAmount": "126.08", - "discountPercent": "5.0", - "subAmount": "2749.72", - "minimumPartialAmount": "20.00", - "taxDetails": { - "type": "State Tax", - "amount": "208.04", - "rate": "8.25" - }, - "freight": { - "amount": "20.00", - "taxable": true - } - }, - "lineItems": [ - { - "productSku": "P653727383", - "productName": "First line item's name", - "quantity": "21", - "unitPrice": "120.08" - } - ] - } - } - } - }, - "400": { - "description": "Requested action is not allowed.", - "schema": { - "title": "invoicingV2InvoicesCancel400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "404": { - "description": "Invoice does not exist.", - "schema": { - "title": "invoicingV2InvoicesCancel404Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { - "submitTimeUtc": "2019-07-01T21:36:29Z", - "status": "NOTFOUND", - "reason": "NOT_FOUND", - "message": "Invoice does not exist." - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoicesCancel502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - } - } - }, - "/invoicing/v2/invoiceSettings": { - "put": { - "tags": [ - "invoiceSettings" - ], - "summary": "Update Invoice Settings", - "description": "Update invoice settings for the invoice payment page.", - "operationId": "updateInvoiceSettings", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "parameters": [ - { - "name": "invoiceSettingsRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "invoiceSettingsInformation": { - "type": "object", - "properties": { - "merchantLogo": { - "description": "The image file, which must be encoded in Base64 format. Supported file formats are `png`, `jpg`, and `gif`. The image file size restriction is 1 MB.", - "type": "string", - "maxLength": 10000000 - }, - "merchantDisplayName": { - "description": "The merchant's display name shown on the invoice.", - "type": "string", - "maxLength": 100 - }, - "customEmailMessage": { - "description": "The content of the email message that we send to your customers.", - "type": "string", - "maxLength": 2000 - }, - "enableReminders": { - "description": "Whether you would like us to send an auto-generated reminder email to your invoice recipients. Currently, this reminder email is sent five days before the invoice is due and one day after it is past due.", - "type": "boolean" - }, - "headerStyle": { - "type": "object", - "properties": { - "fontColor": { - "description": "The invoice font color. The format is a valid hexadecimal code prefixed with `#`, such as `#000000` for black.", - "type": "string", - "maxLength": 7, - "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" - }, - "backgroundColor": { - "description": "The invoice background color. The format is a valid hexadecimal code prefixed with `#`, such as `#ffffff` for white.", - "type": "string", - "maxLength": 7, - "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" - } - } - }, - "deliveryLanguage": { - "description": "The language of the email that we send to your customers. Possible values are `zh-CN`, `zh-TW`, `en-US`, `fr-FR`, `de-DE`, `ja-JP`, `pt-BR`, `ru-RU` and `es-419`.", - "type": "string", - "maxLength": 6 - }, - "defaultCurrencyCode": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "payerAuthenticationInInvoicing": { - "description": "For a merchant's invoice payments, enable 3D Secure payer authentication version 1, update to 3D Secure version 2, or disable 3D Secure. Possible values are: \n- `enable`\n- `update`\n- `disable` \n", - "type": "string", - "maxLength": 7 - } - } - } - }, - "example": { - "invoiceSettingsInformation": { - "merchantLogo": "iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2", - "merchantDisplayName": "string", - "customEmailMessage": "string", - "enableReminders": true, - "headerStyle": { - "fontColor": "#000001", - "backgroundColor": "#FFFFFF" - }, - "deliveryLanguage": "fr-FR", - "defaultCurrencyCode": "USD", - "payerAuthenticationInInvoicing": "enable" - } - } - } - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoiceSettingsPut200Response", - "example": { - "submitTimeUtc": "2019-07-03T19:26:48Z", - "invoiceSettingsInformation": { - "merchantLogo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2", - "merchantDisplayName": "string", - "customEmailMessage": "string", - "enableReminders": true, - "headerStyle": { - "fontColor": "#000001", - "backgroundColor": "#FFFFFF" - }, - "deliveryLanguage": "en-US", - "defaultCurrencyCode": "USD", - "payerAuthentication3DSVersion": "1" - } - }, - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "invoiceSettingsInformation": { - "type": "object", - "properties": { - "merchantLogo": { - "description": "The image file, which must be encoded in Base64 format. Supported file formats are `png`, `jpg`, and `gif`. The image file size restriction is 1 MB.", - "type": "string", - "maxLength": 10000000 - }, - "merchantDisplayName": { - "description": "The merchant's display name shown on the invoice.", - "type": "string", - "maxLength": 100 - }, - "customEmailMessage": { - "description": "The content of the email message that we send to your customers.", - "type": "string", - "maxLength": 2000 - }, - "enableReminders": { - "description": "Whether you would like us to send an auto-generated reminder email to your invoice recipients. Currently, this reminder email is sent five days before the invoice is due and one day after it is past due.", - "type": "boolean" - }, - "headerStyle": { - "type": "object", - "properties": { - "fontColor": { - "description": "The invoice font color. The format is a valid hexadecimal code prefixed with `#`, such as `#000000` for black.", - "type": "string", - "maxLength": 7, - "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" - }, - "backgroundColor": { - "description": "The invoice background color. The format is a valid hexadecimal code prefixed with `#`, such as `#ffffff` for white.", - "type": "string", - "maxLength": 7, - "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" - } - } - }, - "deliveryLanguage": { - "description": "The language of the email that we send to your customers. Possible values are `zh-CN`, `zh-TW`, `en-US`, `fr-FR`, `de-DE`, `ja-JP`, `pt-BR`, `ru-RU` and `es-419`.", - "type": "string", - "maxLength": 6 - }, - "defaultCurrencyCode": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "payerAuthentication3DSVersion": { - "description": "The 3D Secure payer authentication version or status for a merchant's invoice payments. Possible values are:\n- `1`\n- `2`\n- `None`\n- `Disabled`\n", - "type": "string", - "maxLength": 8 - } - } - } - }, - "type": "object" - } - }, - "400": { - "description": "Could not update the invoice settings for this merchant.", - "schema": { - "title": "invoicingV2InvoiceSettingsPut400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoiceSettingsPut502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - }, - "x-example": { - "example0": { - "summary": "UpdateInvoiceSettings", - "value": { - "invoiceSettingsInformation": { - "merchantLogo": "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAQCAwMDAgQDAwMEBAQEBQkGBQUFBQsICAYJDQsNDQ0LDAwOEBQRDg8TDwwMEhgSExUWFxcXDhEZGxkWGhQWFxb/2wBDAQQEBAUFBQoGBgoWDwwPFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhb/wAARCADHAM0DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDlPBvhzU77xaYFVhHnIIPf3rp/il4d1+w0lFWRwi4PBPWvQtG0+LSv+Jj5e1gM9OteP/tCfFjUJPEUOl29q0kEOPMYD9K8aMYVpc0Y3kehgOIcfGrDC4jSLeunTubXwa0i4F95+s3DttwQGbPFeqa1rNnJY/ZUnIyMKoavEdD8R6nq+mK9hbMJFXCgHkmtjwB4P8Y6zqzahqly1uMYjXooFY+wrzbex9X7SjKvGFBuSv8Ah6m1d648OqtbeeyjHB3GuV1bTrrUdUkuGuHwx+XntXWeM/AesabD9uX/AEjbye9cm9/NCu1wc5wR6V14TCUormqfEfF8XZtmWGxCp01aO6Y7T9DkhufNW4kD/wC8ea6jwrosk10Lue4c+UOBmsXR5TOwfdxXRWOo2lvGyyyFePWtMRQwk99z8+jDEV63tK0bnX2+sSRxi1DOY8YIBrzn4w+ENO1q1e8hH+kAEqe+fers3iu1s5NoYSBugBq5Z6ot7A0giPTI+lcFOp9WqXjZo9SjhqsJRqRlb9D508UeHNQtLGRzDJujHYdaytHmm+yeTNCyseNx4r7A8F+HNM8QWckVxbrv52r6mq83wu0LT42k1ezijkJLRkjOeeK9hYnnjdo9+WZRp+9TnzL+up4D8OfDzuyzybhu5xmvQF0KytolkUfMeTz3rrp/DlrbttswqxgZOBTU0tJVVSQMnFcsqkXJts8jMcTiq0ISk7R6HP2pji27m2qPer9jr8aSeRFub1wTS+LfB995kAtH/dvjcPWgaNBp0KoXXzcc/WsKbbTaR5kK86CfVl+3mS9uIxc5K56Z7V07LHbRwy6Wm0DBYiuWsbaNrYmR8GrMl9PZRqI3O0HOetc/PTcrXO/D8U4jDrllBNHdate3F1o2+V3Qkd2rjtTvIbMFWuHY/wC8aNR8SG/0c20jkFRwcVx3iOW5it/PKs6qOWFb16kIWUNUYyzN4qXO46nQaTDZXF488srYPcsa7jQ9Bjn0Geeyuf3mOPnPpXjukX7v9wt83tXW6Tf6zp9kXt5ZI43HP0q6VXnjY0jUcp/DdeW5xvi+XxQNYmtbUXLMr/OyseOa7T4SXeuWS5nuLqJz1IkINVtO1K7juJJfKjmd85Zu5q9YXlyu+WYRruz8oFcdfFTo3cYo6f8AZlR5m2pdrfqdTDqb/wBoOzM8nPzMWJJrivFUl9LrUr2s7pGeg3GtSyvlKlvvNzXG+KLu6OrN5SSFdo6VjgMTXV3Ld9z5ydduNm9D1n48ar4V0v4dn+zdYt2vfKxFEjBmY++OnNeEeDfBHiHx9eb0sAEJz5hHHSqfi34fS7vtlrePJHjdnf0FXPhz8VNU8A3P2WL/AEiJPvR5yfzr0LVJx/cpep+sfWstlJc03fax1F54S8R+BbyHbYpNbqw3YHOK7v8A4Sm3/wCEbSSS2NvKV71wl/8AFTxF4zt55obKO3Vc7VJyWrk/EfiDxJNpLWjw4Kn7y1tSoYqfuOy+Z6FDM8Jhdb6PyPV7HxvPc2strs8whSBn0rgtQsxPeTNdoU3SE4/wryqx+JOp+G9YIuhuw2MkYrdl+K9rdyebdIDuHyqi55960+qVU7X1PNznE4TMaa3TV7HYXkT2kG60iZh61j6vaa/c2rXEVvJtxnFa2heMo59DV4rTeHwcba2tP8USvZeQ1gwD8A7KzVOMZ6q7PgpVnhq3u62PG9H1a7PjGO0uonyrcqT717DpPiTQrScQX1xHbybRhXOPaovCvh7Tzr8uv3NsqiFeXPCrn1PQV5r8V7zSNS8f+fEhaONvL3oOGPt69auVKhVrxTjsj0YTp5g3CcbWPZdK8W20OoL/AGVcKWJ4dTkVu6t4pvNcYNqMgkaNNqYGABXnfwz8PDT9JW7CCVJOUYNuC9OpHFaHijWIdIt3cjLAZCr3NYVJwU7Q1PnMRR9nN0sO3bqX/E3iGLSbFpJ7hYQ428ntUvw1lj1mN7iC+QxqeRur5t8YTeJfGnif/S7hre3jYiGFDwo9TVjwzf654VvxZRao4jY9AfwraWET66nr0MtpyoRVSTc157eR9SeLNbgtNGf7LL5kkakde9cF4VvbzUL6W5vmPLHH0qh4O1E3Vuq3ETkMOp7mt2Aqtwfl2rjoPSuGXLCLhfVnNi/Y0sOrL3+36mzMvnR/uXxjtWbPqaw3SwS7Xz2BqSbWrKwtT5zCJepZj2riNSMt9r39oafLmPHHvWdLAUvaKVN6+Zx4PD1Kt6k42Xc7aPyp3/fN5KNmtOW/0e30c21wu7APOO2K5yxkgms40vZv3/REXqasap4F17W7UzRTrBFt4UHkj1/Wuvka0irnp08Mov3VcTwrcaJdaxN5EirGnPPSoPjF8QovD2kpp+n2/wBoluMIrL0XPf8AlXP6b4NuIbiS2kunVh1YHrVLV9AtbGQ3GrztLHH90k1m5U6lXlvouhrRdLm5YO12aWg+JL6awjYrhzyQavnXLgzbZmx9K43XvGXhfT7BY7C58ycYG1OceuTVBdbnuYVurWBnyO9Kjh9HJQ+86c0yKra0aqb8noeq6XeTM2IZMKetXpHgJBldN2Oc15xofiy5XT3imtDDKVwpJ/lVR7/XpmLxFmXPXrW0qNSrpy2PDo5Go+9OdzrPg/40tNd06SwLKzlCoVjz0rlvFGljw9rrSTxZWdy3P1ryDwbrV74f8SR31o7FVYeYM8YzXs/jMS+OvCNvqGlMXuIAHkRDzjHNXSTw1W32X+DPsK+GdOoklftY0PB91HK/lQR7VkPQe9d5pEdhbws86K2ASSw6cVgfA/wyDo41TUQV2HADd6zvjtr40LSbmLTH3TXa7E4+5ngmvAzH63jMZDD0Z2jfWxhUyXGfVo42tor7dbPqed/EHT9P8ReJLqW2gxbmQhCDnOD1p3hjwVYHbDLgKOpIrmfCd5rNvtkCNNhsn3r23wr4P8a3ujpqsnhu4NrIu4MF6ivrKkvYRSUrerPOqLG1JNUNV6X0LOhaDa6Tp8cjXMflPhVGK0Nblt9Ps98AM8mVwqA4AJxuY9gOP88iO40O+ubqCI2ssENvjzVcdPWuyutH06XRYktIvLntZmQuUz5qsqkZ9FAJ+teLicdQoSVSu7ruj69cJ0KsIuEf3jSvro31Z47rEOp60iPrEs8sTNn7KvEYHXaqZwOACWPPNYM9h9lkUr5UXkhki/dhtiH2PVj6nmvZ49CtXkuFnmKpG5wpQKCgHJ78VheLNH0GDR3uJ7t4Y1YYbZvL+wVecnGMdfx4rD/WLL5TUIt39D0IcN4ylD4UkvM8Xe7uNOvVOnPcWcik4kjmZZHPqSpGee1WI/E+qyXKjWLprqLO3e/3l/x/GtaG48O+JINcu/DVvqkcmhywLdRXdt5TtHLkJMFySF3rjBwfmU96zZNKkvGzHbCRsfxYBP0B6V7EIxqLmcdV33R4GIoU+fVJ+a1/Ez/F2r29ncxyWkgLSdwa5t5b+XVUuIyZMc59/Sui1rwuJ7RcKDLDn2OPeq2h6bfLex21tbPIpP3guRXVF3drHLXoqFJOG5uaT4t1i2sxGtrllGFzUcnjfxIkzF4l57e1dtoXgbUbl4WkgG3gHiuouPh1o6Sxi7wzMcMqda86tXo0p25fuPElKnCTdVad+h4jq+tajrepRyanKfJhORGrYH/166XQfE0MIEYJRAccmvR/GnwP+3rDqHh5RFAynzRj2ritK8FPa+JBa2FsdQmhbEwI6H0HpWdPF0aq/du9uh6kaLrvVpL+tu52/wAN9e8GXWoxWsyO144+/gjmvTVv/C8kx0q01f8A0lVzJCH5Ue9cv4O+H1wL3N9py206puUqOTXLn4f3mlfEC+1bS/PdpARPI5+6e9EsY4xbS6fK53YTJ54lpVElC9n3+7/Mwv2kfHll4eW3m8Pzx3EivtkAbknP/wBauE8OfF7S9dQWWrw+WzjByO9R+LPAq3es3N3dXqxnzHOxz15PNcPrnhN9KuxNDaNcbuVC966aMMNOGmr7nAsppVnLk6M9Kg+H8eoXEmo6UiPHJyAK057L+w9HYzMsckK52Eda898C+LfF+jagreXKltCP9U3Tiu1j8a2viyykkubfy54/4SO9ctP6/SrNVPep91uvUqnh/Z1OX4ku+hTk8TNNC0n2XKqBnaK6bwv4u0FtJTzIm3AkHK15PrV5NHrE0cLFVzgjFdz4EvdJj0BUkRS/mHdx34r0cRU9lT5oxuejhsow+KqeznP2a3udNJ8H7C80+RtOnjdgv4k1v/CTwhqXhG6VfszPBcHZIg+b8am/aCE/hD46S+HtLZ7WwjgjkjjDfeB5zXeeGfiNZ6T4diM9lH5zfIrvzk/1rx8bjqnO8PUVl5K59ZRyejThTxrnZrbXS/z18jQn8PSSW62kSm3ibk8dc1y3ij4d6TfYhn3TMfx5rcvvGV826+uIiYx82FHQdeBWA3xv0CTVlt7RY/tQ42unOe/avPo0587lSv8AI9LF1KMoqNZRt0Urfqd78G/g34M8PwJruvQRvNvzBFKcqOnbua7Xxh8T9D8P25gGl3UkcK8CKIBQPauV8I6nHqGmw6rd+ZKznG1x07jA9KreNV/thGks4zJ5kfl4fgL15xVYitarGnUerW7PhqmOVHGulRprlTSsuvocj8RvilJrGjXr+AfDUNxrMgCRLqEZ8lf7zkD7xAPAOBnr6HwXw1pPxr13UtS1GWDWbl7GRDcva3UMbWTH7uxNyhQQBnaOmBX2t8LfBFjovhcS3UULyFPMk8teTgZ4z3qbw1pEcVvNIIFj+2ymWVcDn0B9cDArjlm8sLQcORO+10fV1KNOpUvGTSj5nzx4f0fxHcSLFrF7JDc3IBRHtB8uMkq2HCkkA8j8jUniD4ft4nsZtGu7t7OO8hGZo5fLlQA5BjPIDKVU89TxXuPjTRIlZWES/Kx2nA49P51yP2WUR+TchXiydrZ2lRXxsswq063PD3Wn0/Q+mopYihyt3TVtTxjwH8IbTwFpuqxRazd6xfalHGl3d3kWzckbbljVAW4BwSSxzgDgDlkegO0mPMV3Xk5XBA9vUV65NYW0nCXk0Mf/AC0z8w/Xmue8SW9nbK0Uf2Jo2OwyzR7sgg5GARzwa+oynOMVicR7z5pSt0PDzPKcNQw3uqyR5u2lhlEiFtzEjDDPrwc981c8I3MmgXc2+3S4s5uJEAy8J/vpnH4j+taWszWChY4iknGdwATntz2rHlm88N5aLhSCgc5YHPU//rr7mu4S90+C+r+0ptTWjPQdH13SnjBhufkfGGBqaLybW8mnkfzI5VOwk56148zOmpSCK58h93KsPkc57+n4Yp9l4p1aG7/s5ndPMxsWX7r5/ut0P0615dTB1ISUlK68zxcRlKk1FbHuHh3Xru2W6s2lZUdCIcng8VZ+EN5pWmXd9qU9hmZXbBI/1j/WuFtI7y505I1kLXD8q684PcCqd/eeNYLeOzsbOWRJOC6rjafcmt5YGNC1Wkt9dD3KeErUHyULXWmqvbs0ei+JPFGonUGvDerbbcui7vujrWXpPxO0uHS7yTEc0sisHkznnnmuCs/Cvim+uvN1plUzcAzS44/zmr+n/Dbw7pgYeIPiLoOkpIclGmBbHfA5/lWPLiKs2orT0PSyvB08thOvWquUpb301+Z4f45TWtX8WT6ilyfs7SblRW4UZ4qWCbUnjw0y/IPlyemK9UvfCfwG0iO4e9+Ld9evnKR2NkzD6A4ArOsdV/Zx0GA3Z0TxV4hlVvl8+ZYY2+uT/Svcp0VGCp209Dx6dbEczmmrt9H/AJXPMFv9RubgWzeW7M2CcdqxNWtdX8O6s64ZVlG88djXttt8YPCUrGLwl8LdH0qNT/x8XkrTSe3oK5/xRHqPibVE1G8tIpjJjiNMKB6AVTcY+6kayqvkcpv3vn+v+R5K89/qUu2GIl8/eA71c0ttVtIGhdG3ByTlfpXqWn2kVnJmPSfLZB6VIdLnuGaU2iruOcZrneIglZrQ462OpU0nKorvzPZPjdo0Pjr4oW2t2Lx7pIliuZmboB0qxqXin4T+BtGjttSt21nVLZD8sS7tp9fQV5+3iPS7VEtTfSGe4G6GFWOXGfQf1rgfjUz2d5HPFYzIlzGGMir97sQa8WlD22MXO9036nvVs3WIUJUYtQ6N7J+XmdtN8V5/EHipbTR9Ejgs5jtCSvzzXp3w18NaJp2uG91LSNPMj4JZzkgn0zXzT4BEl/J5aQSWgjG4zPwWxzxXbN4j1O2bzbe/mupI0KqCchTXRiMPClJKlZN9NTlxWcVZTjD2l7eVz6R8QeJtLns4rKzW3idJAdpAXIHoRU/g2SDxJ4iCyytHBDjcoP38Y4r5Yt/F2strdrFqYlZZm/d7R9456DjrX0j4BSTw/Z2esahprQRTxb40Y4L+9eTjsuVapCpVbSj9x3RqYOso4mUveW/+fkeyanHaWujqivt3Dy413fe9f0rNju7e3jUyuFAOBnvXG6Xqx13xpJqPnLJHHbbIUVspGDycD1+X9a1dQi+WRyc7Tx78f/Xr53OK8HUjGnqkj28t5MTR57uzb/yE8X6vYNC2ZlDKpwB3GDz+YrzbWtek8x0igYxc/OPwA4/OtzxFbBGXzCVJAI3NgZ7E+39awIdMillnLh5C8OMJIMjHceuOuD7YIr1Mg4boY6m8TX1XRX/MnM85qZfJYbD79W/0OH1PVdWu5jL5zW8RBU+Q/t09cZH86x7madpFlUvuiXudwA65zWvqdu8MjIiZVX+Yng4/pWVqimFkkJPqOK+ko4ahhbxowUTx6+Kr4qzrTbM0IdpJGC2dzKoIyevHaoLxTFJ8qhgDkgHhxT5JSDJtQ/NhlXd0wTkA1DcEYxv3Ryev8B7fj2rov2OXl7jpntpI23RKQ33WyeT2z9P6VkPaS/aB5F08YkwxRhuCOD0I6Ee/UVoKTHu6sDztYc4zms43DRagksb4bBB7b/8A64qoSsJwRcuvHfjWxFtpOj2lnE6OcbIwWYnuCTyKbrnjTxrDp7xeI9QutNaX7jxkRhjjpkVn3x8vUY54mba5G1u6t2bPY5rqv+E9vodOW7v/AA9p2t6eq+VdWc65YP3ZT75z+NdMK0E0mtGL2k0/Jeen9en3Hmei67pCTX1zrV7e6hqW0mzd7hnUN2JyelczrWoTa5q32q5dd68AqvQZr17wz4O+EfxKkmg0W8v/AA14gZyVtZUJt+/H0H4V6r8KP2U9I0zw+brxRfNqN27HY1qf3YHY1ljK+HwadatJ/m/uJljIxgoRimt9LWv59b+qPlu2st9n8xDYORnqeKoyW095q0MQfy4IT8yk8da+rtX+CXhnTdaEjTShVJKRk/4fSq114E8NQWNzF9igfzAcPt+bPbmvNocTZdWaVOb+45aGIw0p8krRfqfNOrR6jPiHTbLzRnkoOeO9em/BvVb64t47K/01lSFcBmXBzWvZ+ALfS1nu0l8qSbIQxk/KKgs/D93p1ldXWnaxcNPtLLFKc7sDOAK1ea4erNwjZr5nPisVhq1R00m5LtZ/g7Gv4mtEtw+pNIvlY+5j5uKwJdYt9w2eaRjshOK2/hNqHiLxPpd7catbx2+nae+2UzxYZz6L6966CTWdLjwtjoaNHj7zR43HpnFZ4iWHo1OWe/rc8upluUVHzzm438n/AJs5Y6Dp22LxW9/YW9rKqrbxLKDIFUY5HbvUusa94butOSO81aCSINgA/McegriZvD3hY3ULypLtC7mQzEAnPpXW+GtN8PR2s11/ZdpEIIzKMLubA6ZJ+lRUnSilNNrtoepSw+FrVbc7s+l3b8v1NCbwpp2s2ebW6m+woAUCpsb3BP8AnrVfTfCekabdJc2xeJIm4DNu3H3rX8O+K7CPTbiKGZpN6Z8p13BPxFea614n8T6j4hWx0yK3jWR+5wNufelSp4urUlryxXmYzwmL9uowjGMH13f6s9f8Ajw/ceLBdatBADb5e3BUbd30rR8ZfGrw1q8lvpd9dxrNYkqIYxk9ec49sVV8M+D9Mk8Jx6Tq99DdXbKWmmiYqCSM4HOa838ReCPB3w98SLeXmoRyJdK0iQyHLRgHqO55FL2eHqz5asm7fieo8pqYTDupWle+/wDXX5Hq/wALfEmn2GsXdxHqhls79oYbW1jXLQuzEMzHsAMfSvaZozGuJTtVl2sp7EZr4l1L4lQWcb/8Iv4fnuZgS8bLFgOw5HB/CvsmHXo9c8O6b4ih3NDqFlDdZ/2pFG9T6MjblPoRXgcQYOm19Yp03FaK3y/4HU97IsZzwVDlaS2v1MbV/Kub4q2ZVVtpU9Dx1rm9Wu4kYRND9lnt3z5iL+7IHHIHQdOe3NdRqMaS6dcS7CPnEaMDjJ6kjFcX4he4W43qSXQEHHU4r7Hh6Hscsgr6dDx83lz4yTOX8RXoXU5fPgaSO45jZF5UH7y4/i6Z9cEGssXGn3BJjYTKOGXPKfUHn/PNaN7cWSTL9pikZHYKywg8H146H3x65qp4y8F3Kaf/AMJNoN/Ff28P37m24kgJ/guI+qE/3vut2x0p1oJzbNqFWLppPcz7y00+eBtj7WUgg+nsf8ayZNJ4mjV1O5vmibg1c0WSKe233aTW0nzAhFDBjjoORgH8RUS+J7CzvhYN4f8AtcrQsu+4uCpH+5gHlcZyfX0rmk5JtJXsdHs4vd2uZ15p03kiaVtiiU85wSf6Vm3FpKJVLdFJ3ZHQGu7h18X+krpz2lqscZDTZgAnBwB8wOcqcDkZHvUN1Y2r26rEhhZQShRQQw9/UUU6nN0syJ0XHqcRrWnD7Ostu7vAeWCDJT8PSneGdT+wa00jRrNDIvlXMZYFSR91weh9/UH6Vqa5ps0TGbSZVs9RxwhOYrge2f5Vwsl48eqN9ttBaXDOfPjjY7C3qq4+Ud8cit6lJVKbT2ODEUY1YSg+p7j4XvNAsNSj1W206OO524dkAzivV/BXxK0m1VFjaaF2P3W5T8a+e/CyXeqaOJIZI1AUhyVO7I/yPzpbpdb0KwF815avDIdvlzEIxPtn6V8vLLa3trupr2u/1PiYVsfh6nLzxb7a/nY+hfHM3gr4gWb2T68/hvUXIEN9Ef3Mjddrdq+f/Hln448M6pqOnPrNtdTQSeXam3cOJRjhs/Qiud0nxnpevLqdvc3T28sdpIohz9zHVgfX39q2Phnpp1q4jt4rlp5GXPmvJkt7mu+caOHoWq0lzR3dj3HjowoP2tD3vTS/e5L4V1bxk2lsuuQ2q3BbAzwCPXFbl5rWgaDo0t34iu4vtQjzBBEeWPsPSnfG3RtQ8LeH7PUBNGUuX8lpGG7ymIOOOh6GvFNqxfbbvxFaf2h5qZiujKQWPbiuzC0FXp+3UVyvsc2Fw8azVZR/r8TvPEvxI1DVfDcNt4a0lpmRfmAbALepHeuej8T+LWiX7baSedjkINoHtiq3hBYreDzbORolHOFf7td5o/iVTYIJDp9wy8GQuOa0lShTk7QTfd7l4nEVJy5oqP3f5nNeHZ9O1C+mmu7IzEnKoW2iQ9h7Cu70mLT77Tprf7PDHJdEYjiZmWNR/DzWTd+HbaQAi3W3nAyjwnn8u9bPwusddj1Ce01KC3Syt9rb2U758nt9Mc/Wj2tKrHmXTozPD4yNaP7mXL01Wv6mv4U8K6VZaSJI7B1Z2JMqgjPPqawfGGgD7RnTLLzpnGVJj+YdeteleKobabS7m7sLvdJboii2UZVB0ypH1rzzWtZ1K1vjpmh6Tc6prGMSCMfJbg9DI3Yc9Kwq4qUWla7+5fNmuIlGhJQhNvzW33dPQ4RbXWtHZ5b61u1knYqoRmD5PGQO1Ub/AEtX1yOwv9RSS/uPlihuJvMYLjP+P617BpvhS+t4Tf8Aiy4RZ5kWVlkbaqDsQT0X3rh/G8nw30LUpPEOn3ovdQjj8sQ2Z85iT/dI4z1Gc11UMTGo23v5I9F51RppUqF5O27V9fIqWng67uIYvMns4DEMfu4yWA9c9K9p/ZS11bae9+H19qy3STXK3Omic7RGzKVmgX03Da6j+8rf3q8btfFkly1r9n0q/t47hSSLtNuAOvAzjjpTPDusSjxBPP4WsYWhiuInMk7kyRybuWUjoc8jmuyjhVXjOnVXuk4LG42rUdStPZ/jbyPrXxBoNxpeneUMNbSzFjKRkowHT2BH8q5HW9LkS/e52BlwPNj454HNdl8N/ES+O/CshLbL4R+TdQsOBMoOJU/2XGcjsVIqvqmgzRzqnmbGZeGKkAMB0P8ASu6OHjRoqNP4TpqTnKo/abnmGqaNCkDyGISxzZ3MB831xWJf6SJVkWIzR+bEI1mglMchX0bHJHHQ16LrmlSG1ljdlRlUlQh4fj9K4uSwuHgGYpF2ZJy3ysOenuK8isnGTfQ66VpLzOD8Q6fe6au+3TzfLAEkeAFf3U9FY+nQ84x0PFalqdvceILN4/MjuEuFDxyjBPOMEYJz9AfpXutxE01v5M8as3GYyMbh6+hrjvFHg2ZGN/YoNzKR5ToGV07owPDKfQ8fSs6VaKlqjq5nKKuU7iwQTBwhIX54/mwy9tyMDkemQfbr8tSQzS2tv++fzYef3ypjBzyHUfd+oGPUAc1jWWry2M3k3VtcFI2yIyWaSHjBKnrIoA9fMAGP3q8Vu77e4tEvLS4WTfys0YBUjn72DjrgZ6Z4+Q/LXHNuErSR6EeWavEi1CKOe3aJgWhYBiFb54iejKe49Ox7E9K4jx3FFDH9m1vahfiw1iMfKW7LJ/d9+30rsJom2MsYS3n3MBCpC89SUJHGe6kYPcd6x9Zkgms57G8RSssZ8yCTIjlbH8GfuuPT8iw5rqoV2nZnJXo3Whk/DPX7jSrG8JjeZ1JhntVcZWVe6n3BH1GKwfFFvr3jC88/WNQMNrFL/o9pGuFjXoST61F4fd9E1ZbMEG3mO62lJ/1ij+E+69MV1q6NJqeoRudUitYJEwGlUmPJ6DjkV1OUY1NN+54GKwTm/a04+9+Ji+GNDi0q6uokkh/f2roAw+Zxjkn9a7P4PWs+g+KLe9tLQNtUq6RnC4YDJOe9V9D8B6v9quG07W/D+pwwPtmZdTUMhIHy/OBg89M8VB468P8AxCght49Ok1K20tZCb3+ywsxfA6CRM5rnxOGnVcqbd1JanB9Xrqpyzi2uu9vvPRP2pB/wlngnR9Js5DHbLMbm6kHqvAXjvyf0rkPAPhnwpd/DfxHbeLDeM1jamTTnWFlKOMAE5xlCT1rnvBt9qnhrTrnUv7SmN1Fj7DFMSW+bjcyt6enrXo+j/F/VNU0u7g8RQWbRW1oSzvGMz/7G3HGeK8/CxxuBp+xguaC63s/u6/eaYaTp+5DZp/l6+XY8Y0HSILGzuYLW9t7gXQKhpUPyJnPHvx1q1HpRC4tiqRjoANo/Kuk+JGu+E9R1CxvNJ0RtIjb5b2ONsrI3UFQOg61zeuDw/pF99lg1T7cGUStJbFmRS3OzkA5HANehTqVaqVRppvy/yOapGUt3dI37jx1oN1p8ssAvIRbtiaX7OP3WT6H6VV0X4paF4YvI5JdX1TUI23M1rdoBvz0w689hXnfxO8DeKtD8RLpXiHQ9W03T2YD7VLbNErM2MK7DKsAeATjkmorrTbPTbW001NRdpAzmFJFEj79vy7cD5s9OCa9F4SEo8sndfL/I76eXwg4vmene2/oe3eFfjBDrGk3+mpcwWr30mBGM7o4gdww2MkjFVZfEXibVINWit7NdDsTMv2MWEjGe5A6mSQdC2OfTNcx8JfCGkeGbxtQ+JOm6pZ3GpQM2hHUA1qs0gA3EIw+cAMM5wBmuguNYsbO4uFgurBfLbY0UbABSRn6E9+PWuCeGoRbSTdtuy9DjzCM8Jy1FSUlK/wDTS27o4XXrtJtTmOp6Tqcl2YgJF1C4klLY6KNxOF9ulV18WzWHkW8ejWltngRn5QMehxXZ6hd2+oeJreS/eSxtBCsUOoKw23EwblcZ+ZRkZP5V2UPheKxuYrLWbG2mkj5e7tQsoVCN24sM7Tj+Hr7VtCpD4Zxd/VmUcPOcISVG7l01Vr9+3keX2vjq8+1GDULBFgkB8428nmSBfUA4qjHrdtpt3LdWGmXiOkuU+z/Kpzzkn+gr1S+g0uG8CS6RbvDKWFvI6CNiASPmyMg8dD7Vl65oaXOLWR9R0iFl4YBfJbPT1B/A1tzU46JtN+Z2KNPDO1Sm15rX9TS+GvxS8YJrh1U3mn6Hb6asbtBPCD/aYI/1QRcEkgcnjHDZyOPpT4TfEnw18Q9Kk1HSLpg6N5dza3cLLJayY4GGA3o3JSQcMAeh4HxLa+DdDtPF9n4smu7jVLayulknCSb8kH7hyflU479q7+6+Jo1bxpBquleNbrRDYylYYn0rzo5YSMiHy42yOQOvHAPFaQqTo1ORK8H+H53PXjGniaCmnaXrfm+/Y+kfFljeJeyTWMEe0A+bsl/1TDuARkD2rBuoJpLVYrgC3bqXIDAH+tSaH4mn1jSYbiS78m5kiBL+WFLr0DbG/IZ54x2rQh1HTr+2NrdskV7FJzvXCsPfsOv40VqXN8LMoT5dJIxLzTmh08ZAfzDhTs5T6DqawtSt7sR7oGhkVOjMcHcOo/KvSb6zgttNwGW4t9uVOM4+jCuA1S8sxdMhVoFDYBU5DfWvJrpR0vqdlJt+hz9zpNnq9rNaXCxKsi9Tg5NeVeMNMvPDusNdWTyq6g/6TCfn9/MHSQe5+b3r2i4VDGZCVMOcAYOTXG/EDTlVWnUmQMP4XPA9DWUak+xvG0djjNH8TQ6hCsF7aQMwbGYmwG75UdR344I7betSaklvfadJHchisinbNIpyAOz4+8M4Iccjqf71YN54cmfVA9rLbwtIeN8yoCRz3IFac9xFpultdaxrWi7EXIjN/G0knuioTk8cnj8+a6Y0o3XKrF+2clq9DzzXDdxeIItGkgkmnkkDWcifeZgOc44Py5ye4GeDXV6PdsjtaXij90SpBPBPp+NHibTF1K1t9X0C4jme3dbiBV+8hB3Aoe4PdemCce9A6xo1zrEU94/9lvelhukI8ssCAyE9DgkZB5wQe9dU1zRTtqcvtPZz8mbOtaNc6hpLWmn3Ez2MsgkmtUkI3t2LD+L0z14rlk1i90d20vw9e6no3kvk+XK0bscZwCD0zXoT+G9S0+3W+06SG7jODtjk3YHqPT8fzouodK8SbHuhFb6pbtuSaWEOrsP4ZVP3h+tTSxCulU27/wCZp7NSTlS/r0MTSfHPxE1bT2n1hNIvtPZRa+frEaTnpj5XX51bnPGTSXL2OoXcaPJZ2ETIHd4i+W28DhsnaT3PPtXOeLbO80HxVbaj4htppoYZ/NYIf9GlTpkKmMD/AHfxrtfAY8Oazo5vLTQbqSEqTK7zKqdThVUncOBmu1UHON47eRzfu6k2qq1Oba+0+73TvZSXKqCIx9qwwPY4Uf1qKLUrpV2weFLeQd3dXYk+5zXU+M9N0/w/4YfxF4cmFtdR3CqLGVBJ5iHqQe59sVztpr+r6nEbm11e6to92PKYlcNgZOO3NQsO4bK69TmVOdNtafcv1PWP2YPB/wARIdD1DXNQ+K0unaFp6nbptvcNeM7Kh5EU/wAgAbGB174wKy/Cfxz8ZwzW+l694Y0vxlrFxOv9mXJsYbZYguDKIjHHlpAvUnHOPxvfDzwR4r8HWc2n6lpc1prGtP8AZVinaKTy0MbMzoy7lzkqACT91jivLdc+GviDQ7+SLWfEBeXTpWfNvI+EViMnd2b3AH6V59Ct9YqVVJWirJeb67fd8jeOK5HzRUtOrWifU92+O3xW8Q63DoNz4N8J6Zf2vkXEmtQeINAS+fTWBXavzZCtgPnbxjBPavBfEfxF1G6njtIPDuhQ2rWrxQnTtNW2AbORKyryxBJGeuCB2rYsY7dLq0uBf/Z5CQGnQtJL838TAsSACR19aj8aeAtT0+zlkg1uymsGuY2mVI2DrDnqsmME9TjAA9eMnpwvsqdH2beidterepHtPrLnVcbaa27W6dTiHlW6upLNPNuIPNw0xhSL5go3gRgnGGLd+RjgZrq/CPi7W/CH2aHRLtpPslybpoZUGztyO+SAAVPHArR+D/gPSI/FKa1Ho7axbXV6YYrzz2aJn/jiUoxQlQN7A844NXvi5p8HiLxBbW/g+w0vRtPsX8q5u7mCeOR23EFj8h+QDoBuLE8ECvRji8HKk4NX9RYaNad6tJ6beZr+OPitoWt+GLF79rdtSu/N+1vMwiZHAGwj+8Of5isPT79r/S2s4p5WhuIS8sKMSkiY5yBwQB3rhby1uY7ORc295Es5gDIqyxu6nIOD8ykcHnGMit618bQ+HrXQzo1ppGpW0Max6tayWHlJFcgMuPlcmQbcEvkZbFYVsKlC9LWx1fWoO/t0ZFxc6PoWuXaaNqN3p8ckW2axnKzpcMR8rQso3Bef4hwQRmnaTF5dutw0lmdvzK0L7GbnkL0zx1HtxWrdeIdQuby2n8K6ToNlcgSsIYNNG0RFOry/fIX0zj29WWMF5dW8MVzb2t1dTPlVFrljJjO1MEYAPIzwO/SueVSa0a/E4JfV5PmjOzfSz/S/5Fy1+36ZeRaxpOo21ncX5MUMrgfNhd2CzN90A5yeMnHWtmw+J3xA8qB7ltOmubD5Zbpov3NxCp5MyhgVBwQrKc5OCCMY5e5sfEk0LLqOh+WI2kiNtNE6mNhyZODhlwfXsfWprhrafTW0k6KttbyY3mCaRDJgDJZueOCenoPeuqjVpRio1It+lv8AMmTs7e0SfmpL/wBtPefhX8XdO8Q+HxcQXsWnTNKsctnLN5kW8naAr9VLEfKMZx1NbWrXFnqJYh44pVfDyRsJY0b/AGiucV8z+H/C+neGLX/hMU0+/wBN1CQSR6XDeXSzNBFjDXWAo2MVJVDk4BLcEqaxvDdxqMPiu7hi8Q2tukame1ZpdvmycYiTjlyC3XjjrWMqMK0mktPPodSkoRXva+XXz2R9T3FoI4G8xCr7Cyk8Dpycnt/nNcXqWspJpsqXbHgkCeJgWH1HGR+tedeNvjV8U49ChhuNUkEZbELrborIFGADjnnGSrdzk+lZHwH8a6v4l+NWk6bq00bRXyyqVeNVUuELbwigfMMcCsp4RuD5NLG1GvDnUZu9+xd1jUbBry8tNYtLi6tVG3zYxvdO25ARwa1PDfgubU7P+1NC8Kva6f8AZ90Y1gou/qCFGd2CMHJA5z9Tg+Jr3WG+IFy50fT2S2u5Io7m4uHRp9shCu7A9cYGAMcfjWX4+8f+NbKOfQ2axW3mjPmpZNv3J/dD8k8V1W0iqauKKo8zVe9lt/w52fhvQmgsJdW1GQado9ncLbu8UvmSXMzZURW4QMSysRxwCSOaszeG00lrnVNa0CHxH4XupPL1HyG3G1kxtWWZF+46hx8w7cZ4FcX8O/it4m8P6T/Y9/e29tDb2slzpttbWqs4uN3CyYHy7gTyRwcGpvA/xLmv9J1ePXbr915dpm1trryfPdZGRpZN3DOEPpyoA7UO8E3a8gp0qDt72nZ9LF3xlZ6Lo93AnhPUryYjaYbiMqI5I8AZBYhmxjHI5q1p3iJ7y8it721M0CkrFqCwrDNnsHOdrDI68dx6Vzln4r0HxDqx0zR9F+23Dv5dijK6s7dTtAP3e5Jxx6VstoGs+FraYa5a20c19K0ltaW1ys/lIy52Er1Iw30GATms6snOPvRt8jphRhGblFppdmzsmlM9iNO1mzSe2uI96bzztORv4yVPB5Hp3rm9a0V9FVrvSWa4stuWTADxj0YA9MjqP0o8Ite6tqkF1Jdx2sEMeyGPzt5ZQcFymeTwQT2247Gu91u1ttL097w3UVuwAMrSFRBMD3YZ4z+dclOu8PNKPX7jxcbnGE+sOk4veyf+Z5vPB4m1yO1s9MtCDMRsljnO3aAzEEkYB4PGe1XtP+H1hJE0jeLNPkLOTmAuEX1ALY3YPfGM1ZuxqeiXklz4euLi3kfElxZI5USL94FfXsfWotN8XaRdxtNqC2S3DMS/2iJRJ16HjnHrXZXxlaylH8DDEYqNNJqDlfsd54israz0WPwA3hPxbqTaZAIUvILe5tUvF2KxdJRt8yORmkbcpIwO4riPiFZ2+l/2HL4E8MTxrKHS9EMZkaP5Uk3eax3McSL7Aqce/qHhG+TT0heHQtU0+7S8mubS4k8STQXjkSBdzKCbfkyAECL7pGeKl8Y+KfD1z4rt38Ryatot7bwMEsr3U1EcnmFtzCSO3QbGy2WbI4GOmK86hGNKMFG7te/nf/g6nuQoVowhCMkkuunT5nnvg/4j6/cXgs/GuieE4LedTa7PEFn9oUuoJQKSGkAIByQwAx68VzurfEDwPqF1BZan8KNPljbCyPofiKezgILYY4kWRD97oAM96sy3mm6d4ok07w5qNzrVrC7y3up3Yubgx/LuWCO8kjUun3UUBUPA5PU1fGmmeJV8uOPVPDGichYdN1DUmgmuYmRXEgQRFFT5gANwOQ2AcE16iope90OZ1Oa3LG8l1sv8j1v4OeLPAt78CYZrPSNetfDWkTyW6w311aXAhk2BGL4EAkXZIcp/FuPGea5L9or4keBp7iODwb4fl8yW2jcz3KC0dTjO14o33BQAuMnr9K47QYPE2mxSTxv4WSSG2ZTJDeeejsSyL1QrHkFvrhecmurvvD/h34lXF1r/AImtl0nVLmGD/iY6dbJawXUW4os0cG3hMDHKt7FjWMacYyftNj0PaSnTSpp81tf+AeUXEF4dWj18Wlxd2DLtt7tLN4LdsqFeMKeMg5Ulvvbcgmr664reGbjQb2zs7ix+0iZgI1ilZ9uzO4AMw2jbznA6Y613Pjzwv4i+Hfi618MeEvG2raXb3Fsk99pniy2D6aJGbACXESNCylB5gdcLtOPlIIqHxF4cg1bwnNdS/wDCE2GqOFaK+0vUJvImy2G3RFdxJ6Dhe55ArZ1Ka0uZRpVWuaOve6/pfeYXh+7h1Rb6GygWGQ754bKIssaRd41bBKqMjGcnt3qDQ/EGu3WoXFvJpq20McywySGT5S2eNu4ZHTt6++Krt4XsfB/iqZD8QIZryM7XWGFuFznGwsMg4yD6fWnalqFmt212ZxP5jGR1UkEsV65wQB2x1rnlyOVkr/ecuJw/LTVVQV/kaa65LcTW0E3mXMm+UBDd7duDnLKFHUnqe34VqaLp9prmrXc/iKwl0/S9GiEt9JHfM25jjy4M7RlpBkkDoASeozm+D7DXNWmaxsbmwS5edEmvU2Dliu93TfuO1chQB85UrkZBpfjh4t0ew0ldB8FfNZ6Y8by3RgIed3zmSRclSzsvOF4yB6Y1jQcUn1ZzU4zrLnrL3V5LXyJ/EWo2Wr60t/qNjqVzazIIJYLTUI4YY0ByqbDE2QOB1x8vbgVkySeCLLdJPZ6opQmRYbe5gTavRQziMkDpzt59q5ptR8by6CGuvDNzp1lJGGnupreUSTqTwApxlcjIyvGM56VNrl1aTw2d9c6KyXULbLRApV5ZeMbx02gckHjpnrSjT5dyK8v3mtpX62t/VjQ1Wa0g1JbWKxmDSQtNColEpgJJwGYoN/Q5wAenpz2Hwu1HQdP+J2haNaztLdvdQsjLY/Z3cNneCpycg5HXPTpXJ6Sl1e6fDcvsD7z/AK6UMVGehA+6p5yeAOTmuz+HngrWv7Y0TxrF4Furm1fUreRNcSEqtsiTbZSF3DkEEMcHH61UnBp6amVGdOWIjaNtSv4tu7QaxPpUjadp6Q6pdM9zdkJEoDEAO2Gyxw5wPvHAAzXPQ/EPwro2sR3mp2N3ckShhpcebN7yJQwTMgU7FJCk9wCeM1Z+IdrPf3GopJeXEcV7dySzpBCVE6LK3lMxZcEA7sN6nryaxYdK8I29jHLr0t/crM8iWmlaPPEJG2dfMnYcZx0QccfMTxUUfZWTd7r8f6/plckZVGr+8nu9EvIofEbx5D4v1L+0IvC1ppc+xUxbT4DhQAQxCgHpxx+dc9JqN3czeaNF0KGTADNFFtZwB/Fjqa9Gs9K8LC3mkf4ZFFjiBgXUPEdxMZ5CQFTEZHXJyxAAwevWtNbPwokjzW3w28CW88CJ5zXEcsvlDB+baXIYggA9TkjtkjWWKhGOkHb1X+Z1SVG/NOsvkpf/ACJ554T8WaroFvcLpP8AZunyzgLd3UMAWSQdADL1VRnpjmtmLwH4v8RXUd02t3T7oWkR5EbYwP8ACGHXccjp74rs4PEVxEIbCxuvDtmbe48/ZpmkWsKR4GCTkcnA45OTjiresePvEtto7XFjrd3qr3DOha8vBDGrAfMwMe1egwqZJJ7VhLEOUlaCv5/8N+pFXEU1Dkp1JfKOn/pSMXwr4U1nRdbV4dB1rUZrV40L/ZJY4JAc5CEDlecnrjHvXV694VurjULaK90oKED+ZeyX1uv2Z84V/Lc/MDngdfauUtfEj3ektcancXkl3O7BIo8vGFLEqB5jAKVX5ScNuPOahh1C8uNWSFf7Q0yCABSbp7V4fOkA2hkUrJ26/OAT0IrWVSs+y/r5HMlRkkrSv5SS/wDbX+ZqX17pllotva32rTWmqLKS6MjTAnAAO6MsijABwrY+mMVg6xF4QjulbUtT0triZBIxe5+bnnnaePoeaLixi1q3S31O+KxNKBNMl03k5V/mf5cRgEgg9BhiK7HwvaMNGW4eSz1lbiV3S6uobaQ4zjYrGPOFxjBJxzSjZ7u3oiKVKpG9r2v11/yNPxH4i8Yw/De/1fwb44uNcvodet4nvZruK3kRZwV/fo3yQ7XSMbwxRg+Q3BA4P4vTfFUR295488P6xp+n2zKj61qcaur5OFCSKMKmUbDZAbB5raXSPC+g3X9g6xqttEupWyy/YbmaSX7QPNV4pXYZcfPHxxtbBrrPF2t67c2+tX8fihdNF3c/apdjrFHfOqoyRwBw7FgST1+XLAAda4KVTkWkU1320foe9Ro1pRlztr8TivC/jD4gJ8O9RuPBHibQdUs9K2vJpFlN9jm08FgFk2KwWdchtxjLEDBHXI6bw/deH774eNruuRprlxZ3yadPNFFJcxKrGOTEHm5dVVSeBjcPMxzg07SdQ0zWoWfxH4F8JXniK1UNNaRRtps0aOztCUubfywGIOSZFbkHODyen8My6OfhnFr2lSx+HdLh1U280V3fRzyK7EysrsAhRCInjLEFgVA+YcjlzKpOnQdShHWLV7WWnW/fT59ip4qrTpcy95NeqW2qv9zXmW7f4F+CfEV5Ipj1uK1eTAurMRxxzozbVlTdHvUYJI3dQM4rkviFovw9+F/iWz03UdQ8SWsCTF9MlaGG5liKNn5SzqSCzAhQMd+ua7H+19a0XXdY8SaffXtxazW1u2RdfaLeCDyvMDGFQGgG5nTL4B2jDEMK4i61zQ/EeoW/jjxRDNq+oaY6pDZW5JgiZznKxNhmbaDliMcYAya48txOYVZx57uNr+t108k+uh1UcRg6uFdRwfPotU7X73WjXbqMsvFtong8/D/S/ih4i1HUpppJbFNU8EedcpDKXM8JUXDpLG+5WVvl8sglGUMQavgvSNPs4f8AhX1/8R9Yu5LK4W7Jm8EtJe+Hy8gYCBhKwhWXcQyysYgP4QTuHpdnpdrr3wwsvGOnXM8X9pWn9oR6bcWu1k80hljRRkMDGFIwMYIA5zm7+z9oz/C+71LU1SPVta8RIq6raIjLHO8eCSE3t+8dNwyTt5JI617MqkKMvfnZPyv+hX1dVIaR5n6tf8A828Z+EbfU5be48T+ObLzNPtTbJdT+HLtGKKTtJ8oyKAe+4krj5eCRXO6d4Gs9c1Q6Lo/xI0nUZwGcW0OkaluEa4BfP2cjCkjr69q7T4mfGHQ9Q8VXNnY6NdWSwaYEu55TFPJNvkcgsgOESMAAv1APyqO/jvjDUtP1W8tkg/tLSJHthtM92sCEdAGyNp4OQCy5HXrW/tZ8zV7rvYx+r0klbS/S57l8Kfhlfm6W007XvCV/ZJl5biz1MXV2fl4YQyiI8NnAXoR3JxXJ/Fjw54j8CXCm08KTxT3E8sYurrQpPMhUZzLlWkhIYZIOcjqQK8vTwzr2sX1vbWksUemMipaXxg823lJZkjIaMlljZwu9s/KGJAIXA6vx58RtU8MQnxD4Ya80e8is4bT+z4ryW3t9JuUdIpRJChPnSDytuGYY84udxK1jOVRyjyvmb6baeupjOcFzQjpy67floZeg+JrrxdZrctqsN8I2+03omxMEZWCkHBLYG8dOm4kdDjtvF3hbw/pmj6jq2i2d/p+oaFaxzE2Ya9W6gl8pZQY5WJKqGMhJOAAR6YxpPiprc99oOt+IvAPhDxVcatCt9FJe2C2upWrEkBPtEZjkYksdrMWyOSM4z2d94x+GcvhLV4tQuPE/g241Wzh069trpoL2O1kyokWJS0czLiNVJJG3GcA4FClLRqNovfr/AJk0VRrUZOT5pdOlvy/A8stRpsmkahbveXCswlVJ47ZVaZVwULk/d3Et0ORge+ex+DPi/wAR6Lav4Hmmjk0/XrmJvs14wZrUsU3SRDcvzMuCdw2kL69VsfCWh6nYJb+DvijoeoaisG2eS3s7mNmcsxUmxmQg/KUUmORiMFsHNc38NfB0i/EhtUudYtmm0eSdpbqzDuJZYwwa4dzykYOAu4ZJQ9ARnojHnlbp/kc0MHCn+8jJp9v+CWfHcWvWXxYnu9EuF0+GSwicypI3mRYbCyOeBsZmCFRx8vYVia9YTX+qKHgjWZZREryOZGEpbBaGNTnJYjr19a6jxLFZ+O9W8zRr4q1vbrClvJMIZJlBLF0LDB5YkKe2Kg1DQ9es7W7vbLSQ1np433sk8hhjZQrZXzVyyucEgYyc8A94c3pyf16nPjaNSck1d/j+RlxaDcXVw8qXMl4q5KOco7FCyhSpPyAYH1OemMFbMwPqa3VxpWrzzb2zI7bg0bMOZSpUMxGflUn096j8MnV31q30tZW2lFaSLT5ftDICpdBGV5Y7yFxxgk5xXTaxoOr6peNC3g7UnRGVWey2+bFMxOUucMygrjOXAYjgnIzRKUlO0jh+rzfexzen6fDI0htrBGtMv/oxt2SZiOAq7uikjuCQORnNZF5uuPs8c0m+OzixFasVSG3PzBljVjy3Xk/MSTnNeqWvw1/4lSzajE0H25R5S7lIGGG7zFQnoOOoK9R70PEnwb8PHT5tbm8cXrXPnQrLoq2awrcEBQJVlcOqZx353fNk5IpU6l5a7HVTwNe13on95x9hDaR+Hba/MevRaoGaKGMW6PG78ZKyZHy4z91XOT61iaw/2y1VhqMl35as1xczRlWViSyqqHlwMqM8ZyemK6uT4V3Nxr0I0/xVdMsjbrd5YUixxuBYptG7gEDHp65GX8SvC+ueGb2ytbvxB+8ktGkaV51HzI7BiFUsQchTtbDc5xjBOylHm0ev9eRtUw9TlVoJef8ATI9H07WLvSZpba1N9pb5AhkO2G4IBGdu4BiuSf8AZyBzS33gqeSfEehyyiNQpdXVQT9M+9ex/CXw3oWmeA9P0Nr5beWGz33zSAkvIw3SNyScs5bpwc9K53xZdaLp+uS2vhtrvULVVXzLl7kfvJNozgADpwPwrnrYj2dtTto5R7ZJt7fI2NL8BWMWmyTm7lvrBpjEk+r6SZAUAbYZZrSQMDlcBlTP0xVfxN4R13QY7HW9Pm0XVvCVup81rDxNLuhYrgMjXiggjpsIbJPOScDPbwd4dv4bf+2PFt3PHHu823ijZryWR2JLP0jC/KOgAChsYzzBd/DO/sfDSrDbabHBNcZhjvf3mwNyTEV3oJMZGSAfcHmkp3evp1RXLVUbpfl/w5qW+uXsulxapoEF/cWU8WI5tf06CNZmOCQoCqX4wMx4BOTk1Pa2/hy600Q618KtA1LcskzxaZPLpscjhfupEsm3cFB3SYJwx565paZH458GwPYN4g1SCG4tCxtBdLMbkAn9yIWIjyAQgYnA6j0qlJ4C8XIkl/4h8X2lveBpLiy0eEm4s52eMrIZWO0A7TtKqCBhjn7tKvFQm48yTFGjOrT5oxsd342n0hL6GSy8P3+h6taqSHtddyqWpiZHRTFGsgjA2cMWTr8uK5K60qw8faV5mpXfiCDVNLlKpevqcsiJI4ChlR2dBIudu5QuByQetc3rUq6JqunadoWn3Gual9gii1hnv5EW31AIHkkaRAhKmMgDDhVLDBAG2p/DPxKk07xtfWesQreafZ2kqwNAArXF1ztRpAfmXJYbgD/CeStYYOi40uWkrLsv8isJyU4qTdkr6bW/E9eW9Twz8NbHwxHDctFp9gtpdSW6h1eGKNstEoBYFgsYOBuOD0Brzbxn8bLOHw7YQ6b4evrM7UD3t26wrcW5+6qCQZzuxyBgbe+SBpaN8X9N17UpNPOjrpseobrbzDqBlVXKnYjHyxtDt8pbnGSTwM1prNqdtp9vFP4N0ucxv5TrLDDLBE4QuoDqWyNoY7V64GT3EV6LjK9ZP7+h69Ct7SF6TX/BPDpNWtNfvrIPZWNjILjbFKZizkn5V+cgKOSOg4wPWuttdFtltTYXv+rt70/2lMwSREdeRGHYlVO3ac9QTjcMYrd0Lw5ZWc15A+kWcT3UouHUSeXCHaMOigLxjlfmGAOepFGvy6r4ft9E0l9J0NdT1a5F7MljqSS2trGDtCyqE3Bjjjjkg59a2jO8UoK1u7PKxlKak5t69WtEc5q+tapF4Zj0jxG8LWkVuwjTT43Xyownyh2AYIOD04JJJNX/ABc1p4g8K2evaZZ3k1xaqNOvtFELOxmSJVju2dzgySxAozfKcwDIOc10lnptxqmvW+nWUyiSBvNvr1UhV51DH93CpYYcgYVivAywwQAeem0vV7e11DQL/Trzw9DPpM1y7tp8sixGAGczjJ+ZysDqcNnDn6FJqo1Ubs1+XU5J4hqC1u1+RhaLaWt7eJqd/wCHpIb7TQJIJmcxC3lX51dkYNu74xkVrWI164vr3UdNvbu7t7iDzJJrgoxWc4zgDJIGT6dhzziHQbTU38YSeG7rWruPUNLgSZJTZvJBJFgOsgkI2tEVZT2JBI4INdjqDaw+uhW8GW+lW8tx5NvFZooEkW7BleQthhydojz0Peun94naD07ip0uaHOp6/mchLH4zOqW8XhprILbwiMpHfSCW7Lc+Y4A4yTkqCSAByelct/Zviu08J3mlJDctZb1VWtljK6r+8Ls7gncxBIBDEA4yRxXqiwNNeTAF7NomCJJb3SpLGWXGBt+YEgDnPOcgCtuPTrS1037UbjTnRFMZIdkmRht4OOOd2FJPJJ6HbWXtppe9ubqjUcNWeLWPh6/nS6tP+EfWy3zxteXTXAmaVchZHijyQGxuIGAv5V7D4it/htH4fn8LeCZPFWn6dqaxJdlNk0l7CrgJE5bLKNzRnnkBeoA4rmOy09pbi7h1OR9LZXtbS0RnycFg0igjzVUEEqTzlfQ4wfCOvaBrWkxx6lDq+lzTRyebp8Vk2YGU/PsjCqzB3kKjJPTk1pySnBN21FRpyjJ2nb0KfxQ+H0OleVpemWN1ofyyxtJc3UTyzPjodkm4L6BjyeK7KG7t/B8K+Gpp/wCxdMs4FMupfapLl5BkhiGyjmR03EoQMYABOK5uxmuE8N32sah4etYrSWFLixXUrpttwpUYQui8SAj0bhlwRzVnxlqWiN8IltNV0aG/v9bupLW1jhJZp52YlpGLPu4wp8zdhcKOehqMpte+9f69ToVL2adnp/XyL+g/E2PX/Hj6d4T0HSNYKLPcltRXb5tsqlTcTbGxGqBN7c5GBljnmtqPipNb8J2/hzQLmxhuLH7R/aWpSXAnW5gz8qwAgBXIz2wRtPB4rG0m6m8JaFfaDoHlR6l4gkeGRQqSRTRH955JfBdoVWIM4z1yD1rKbUbfXNPuYoooYfL1AtPcQWrQxTiQLwrtliq88dcEZpqEZap3uL2rte+hueH9RvpdPVZpILeZYBIpnY446Ngncy5z0Han+EdOi1hpbrxZqFjrZsi6u8C7y0ucomN23aOeDzgjFXPh74D0TWNQ1Mya1qWmrZ2kk1lLbW4uFu33cbmkOEHpkbRn1xVfwUbDQvBNsbOGy8tLhwLaCYedK4bGCcfMxIOX6ciuiKpqXoZclWaV3oaSeIrHUrq6sLeG4nmZRDOU/diJXzysgGGHGCD3NeaXWm3Ed9cR22oTeUkzKvlEFcZ9e9dtYeOb6ZDAdHWS6MkoIXHlxNtJUSEdduByPXNeY3WuaxfXEk63ViFMjYEc4jXrzgH3PWuWvFSnojtjUUafxanostrL4W0S51C1Ms8lq4xIdoPVQSfUkn9aZ4i8Sa5bfDmHxJrUki2+q6nIIYTsBKqY93lJGNqKOBljuO48YGaKKxpSc+VSd02b4iKpX5NNDs/CNp/wsXS7bVV0WzhtX1m4trK5A/0+8ZGJaInISJfMcJ3ztLZFFv8Aa5tJmv8AwxMsd3aTfZzBej7VGpLFWjXzc4yQCWBH3RzjIJRWlWnGT18wptqm2ux53b+HTqviW+1+602zjk1Nla90uK5ljtWCOgSQhT97KkjAOCTnNbGpfDfwZafEa3utOmv9XszCJrxWH2ezjudxLR28ZYyBVULy5OWBK4BxRRVYeUo2SZ5/s4ypty11/Ux9DsfCmr+PtDvH8DX1zY2NtM+qPcX6wq8x4jmCxyEu3ylgpGBvIPAzXrWpeI/h/o3hRb6LSPEa2oQC4t11CNBGNxQYKpuA5PAYnpn1oorDGc1avG7t6HTg+WjRdlf1v+jRxcPxc+GmnqYNJ+H+pXD2dv5J+0avIBGgJRFj+bHCHvjGawPB3xP8J3jXt7P4DkPmXA3ytqk0sik8biWYEZB6AnFFFbRwkZQs5St6s5q2NktVBfdf8z0HwrrVtqcbJpPg/TJPJYsscssqCMbgDvPmHcW9gcZre1e9i8GaOuqv4H0e2t5I5YIWW9uHaSR0ZHXZ5m1FKu2T2B46UUVxfVacnZ3+9/5nVTrNwV4rXyRjal4iu7l7fXG8F6cBLGqeS8pMZLr94/vDwAcAYyM/jTLLxheXlnOYvB+hwJDE4n8+MyDAPQZZuD9PrRRU1qEYWUW0vV9PmebicwrUZKMFH/wFf5FPxP4x8Qatomn2lr4Y0TT4Uc3KyW8UcatncqswVQxOVbuevT0yPCOtg332jUtE03X7JVaW5t72zja2jmUERzGIn5ipPAwecZoorqpUoxp6fm/1KjiqlWqr2XorCy6hb3V1d+HmY2k2o2itOIYgkHlyJlf3YyAApjwOgyeK6Hwb8PHma1nW7uPJeBQ0ksolbk/MG3ckEnO3px3oorOcmoHbQipSfkbPx++DWsaz4fW7tJWt9BsbeISW8MqplYUIyMknPPcHIHrg15H4k8O+GtK0WKTQvCT6vrezyrdrgRJBCmwDJBkG75iTyOwoorPC1pyvc1qU4yV/OxH4ZnXw7cQLfwXT3a25MrQzKJrYhQJEjbhcMGGc5+7xiuw1HwtcavfwJatHpFjZuubSKFDBcBl5kG0gqQMLgjsfXNFFehTqS9mpExw8HJ0+hj+dqSLfWOkLNcC8Xyot1yIV24IbIAzgkDj2rl/Ffi2XwvrVstrYxveWMH2WV7tAV8w8kDYc4Gcg/nRRWdGtOa1FiqMaekTz/wAaala3EUU9lrFxfapeQtPqcywGBRKW+4P7w298CuUW8JGRa+d6uzYJP50UV0RVonFJv2trn//Z", - "merchantDisplayName": "Custom Merchant Display Name", - "customEmailMessage": "Custom merchant email message", - "enableReminders": true, - "headerStyle": { - "fontColor": "#000001", - "backgroundColor": "#FFFFFF" - }, - "deliveryLanguage": "en-US", - "defaultCurrencyCode": "USD", - "payerAuthenticationInInvoicing": "enable" - } - } - } - } - }, - "get": { - "tags": [ - "invoiceSettings" - ], - "summary": "Get Invoice Settings", - "description": "Get the invoice settings for the invoice payment page.", - "operationId": "getInvoiceSettings", - "x-devcenter-metaData": { - "categoryTag": "Invoicing", - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" - }, - "consumes": [ - "application/json;charset=utf-8" - ], - "produces": [ - "application/json;charset=utf-8" - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "title": "invoicingV2InvoiceSettingsGet200Response", - "example": { - "submitTimeUtc": "2019-07-03T19:26:48Z", - "invoiceSettingsInformation": { - "merchantLogo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2", - "merchantDisplayName": "string", - "customEmailMessage": "string", - "enableReminders": true, - "headerStyle": { - "fontColor": "#000001", - "backgroundColor": "#FFFFFF" - }, - "deliveryLanguage": "en-US", - "defaultCurrencyCode": "USD", - "payerAuthentication3DSVersion": "1" - } - }, - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "invoiceSettingsInformation": { - "type": "object", - "properties": { - "merchantLogo": { - "description": "The image file, which must be encoded in Base64 format. Supported file formats are `png`, `jpg`, and `gif`. The image file size restriction is 1 MB.", - "type": "string", - "maxLength": 10000000 - }, - "merchantDisplayName": { - "description": "The merchant's display name shown on the invoice.", - "type": "string", - "maxLength": 100 - }, - "customEmailMessage": { - "description": "The content of the email message that we send to your customers.", - "type": "string", - "maxLength": 2000 - }, - "enableReminders": { - "description": "Whether you would like us to send an auto-generated reminder email to your invoice recipients. Currently, this reminder email is sent five days before the invoice is due and one day after it is past due.", - "type": "boolean" - }, - "headerStyle": { - "type": "object", - "properties": { - "fontColor": { - "description": "The invoice font color. The format is a valid hexadecimal code prefixed with `#`, such as `#000000` for black.", - "type": "string", - "maxLength": 7, - "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" - }, - "backgroundColor": { - "description": "The invoice background color. The format is a valid hexadecimal code prefixed with `#`, such as `#ffffff` for white.", - "type": "string", - "maxLength": 7, - "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" - } - } - }, - "deliveryLanguage": { - "description": "The language of the email that we send to your customers. Possible values are `zh-CN`, `zh-TW`, `en-US`, `fr-FR`, `de-DE`, `ja-JP`, `pt-BR`, `ru-RU` and `es-419`.", - "type": "string", - "maxLength": 6 - }, - "defaultCurrencyCode": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - }, - "payerAuthentication3DSVersion": { - "description": "The 3D Secure payer authentication version or status for a merchant's invoice payments. Possible values are:\n- `1`\n- `2`\n- `None`\n- `Disabled`\n", - "type": "string", - "maxLength": 8 - } - } - } - }, - "type": "object" - } - }, - "400": { - "description": "Could not get the invoice settings for this merchant.", - "schema": { - "title": "invoicingV2InvoiceSettingsGet400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { - "submitTimeUtc": "2019-07-01T21:40:10Z", - "status": "BADREQUEST", - "reason": "VALIDATION_ERROR", - "message": "Field validation errors.", - "details": [ - { - "field": "customerInformation.email", - "reason": "Invalid email" - } - ] - } - } - }, - "default": { - "description": "Unexpected error.", - "schema": { - "title": "invoicingV2InvoiceSettingsGet502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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": { - "submitTimeUtc": "2018-06-12T09:27:20.000Z", - "status": "SERVER_ERROR", - "reason": "SERVER_ERROR", - "message": "Error - General system failure." - } - } - } - } - } - }, - "/ums/v1/users": { - "get": { - "deprecated": true, - "summary": "Get User Information - Deprecated", - "description": "This endpoint is deprecated. Please use the search end point.", - "tags": [ - "UserManagement" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "operationId": "getUsers", - "x-devcenter-metaData": { - "categoryTag": "User_Management", - "isClientSideApi": true - }, - "x-queryParameterDefaults": { - "organizationId": "testrest", - "permissionId": "CustomerProfileViewPermission" - }, - "parameters": [ - { - "in": "query", - "name": "organizationId", - "type": "string", - "description": "This is the orgId of the organization which the user belongs to." - }, - { - "in": "query", - "name": "userName", - "type": "string", - "description": "User ID of the user you want to get details on." - }, - { - "in": "query", - "name": "permissionId", - "type": "string", - "description": "permission that you are trying to search user on." - }, - { - "in": "query", - "name": "roleId", - "type": "string", - "description": "role of the user you are trying to search on." - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "object", - "title": "umsV1UsersGet200Response", - "properties": { - "users": { - "type": "array", - "items": { - "type": "object", - "properties": { - "accountInformation": { - "type": "object", - "properties": { - "userName": { - "type": "string" - }, - "roleId": { - "type": "string" - }, - "permissions": { - "type": "array", - "items": { - "type": "string", - "description": "array of permissions" - } - }, - "status": { - "type": "string", - "description": "Valid values:\n- active\n- inactive\n- locked\n- disabled\n- forgotpassword\n- deleted\n" - }, - "createdTime": { - "type": "string", - "format": "date-time" - }, - "lastAccessTime": { - "type": "string", - "format": "date-time" - }, - "languagePreference": { - "type": "string" - }, - "timezone": { - "type": "string" - } - } - }, - "organizationInformation": { - "type": "object", - "properties": { - "organizationId": { - "type": "string" - } - } - }, - "contactInformation": { - "type": "object", - "properties": { - "email": { - "type": "string" - }, - "phoneNumber": { - "type": "string" - }, - "firstName": { - "type": "string" - }, - "lastName": { - "type": "string" - } - } - }, - "customFields": { - "additionalProperties": { - "type": "string" - } - } - } - } - } - }, - "example": { - "users": [ - { - "accountInformation": { - "userName": "auto_nonmember", - "roleId": "admin", - "permissions": [ - "ReportViewPermission", - "ReportGeneratePermission" - ], - "status": "active", - "createdTime": "2018-06-14T19:45:52.093Z", - "lastAccessTime": "2018-06-14T19:45:52.093Z", - "languagePreference": "en-US", - "timezone": "America/Los_Angeles" - }, - "organizationInformation": { - "organizationId": "auto_nonmember" - }, - "contactInformation": { - "email": "auto_nonmember@exchange.com", - "phoneNumber": "4445551234", - "firstName": "Zeta", - "lastName": "DMH" - }, - "customFields": { - "employeeId": "12344", - "employeeName": "John Doe", - "employeeDesignation": "abc", - "zone": "NA", - "department": "map" - } - } - ] - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "umsV1UsersGet400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" - }, - "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" - } - } - } - } - } - } - }, - "500": { - "description": "Unexpected server error." - } - } - } - }, - "/ums/v1/users/search": { - "post": { - "summary": "Search User Information", - "description": "This endpoint is to get all the user information depending on the filter criteria passed in request body.", - "tags": [ - "UserManagementSearch" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/hal+json;charset=utf-8" - ], - "operationId": "searchUsers", - "x-devcenter-metaData": { - "categoryTag": "User_Management", - "isClientSideApi": true, - "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-user-management-api-102718/user_management_api_intro.html" - }, - "parameters": [ - { - "in": "body", - "name": "SearchRequest", - "required": true, - "schema": { - "type": "object", - "properties": { - "organizationId": { - "type": "string", - "description": "This is the orgId of the organization which the user belongs to.", - "example": "merchantId" - }, - "userName": { - "type": "string", - "description": "User ID of the user you want to get details on.", - "example": "userName" - }, - "roleId": { - "type": "string", - "description": "role of the user you are trying to search on.", - "example": "custom" - }, - "permissionId": { - "type": "string", - "description": "permission that you are trying to search user on.", - "example": "CustomerProfileViewPermission" - } - }, - "example": { - "organizationId": "merchantId", - "userName": "userName", - "role": "custom", - "permissionId": "CustomerProfileViewPermission" - } - } - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "type": "object", - "title": "umsV1UsersGet200Response", - "properties": { - "users": { - "type": "array", - "items": { - "type": "object", - "properties": { - "accountInformation": { - "type": "object", - "properties": { - "userName": { - "type": "string" - }, - "roleId": { - "type": "string" - }, - "permissions": { - "type": "array", - "items": { - "type": "string", - "description": "array of permissions" - } - }, - "status": { - "type": "string", - "description": "Valid values:\n- active\n- inactive\n- locked\n- disabled\n- forgotpassword\n- deleted\n" - }, - "createdTime": { - "type": "string", - "format": "date-time" - }, - "lastAccessTime": { - "type": "string", - "format": "date-time" - }, - "languagePreference": { - "type": "string" - }, - "timezone": { - "type": "string" - } - } - }, - "organizationInformation": { - "type": "object", - "properties": { - "organizationId": { - "type": "string" - } - } - }, - "contactInformation": { - "type": "object", - "properties": { - "email": { - "type": "string" - }, - "phoneNumber": { - "type": "string" - }, - "firstName": { - "type": "string" - }, - "lastName": { - "type": "string" - } - } - }, - "customFields": { - "additionalProperties": { - "type": "string" - } - } - } - } - } - }, - "example": { - "users": [ - { - "accountInformation": { - "userName": "auto_nonmember", - "roleId": "admin", - "permissions": [ - "ReportViewPermission", - "ReportGeneratePermission" - ], - "status": "active", - "createdTime": "2018-06-14T19:45:52.093Z", - "lastAccessTime": "2018-06-14T19:45:52.093Z", - "languagePreference": "en-US", - "timezone": "America/Los_Angeles" - }, - "organizationInformation": { - "organizationId": "auto_nonmember" - }, - "contactInformation": { - "email": "auto_nonmember@exchange.com", - "phoneNumber": "4445551234", - "firstName": "Zeta", - "lastName": "DMH" - }, - "customFields": { - "employeeId": "12344", - "employeeName": "John Doe", - "employeeDesignation": "abc", - "zone": "NA", - "department": "map" - } - } - ] - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "umsV1UsersGet400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" - }, - "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" - } - } - } - } - } - } - }, - "500": { - "description": "Unexpected server error." - } - } - } - }, - "/vas/v2/tax": { - "post": { - "summary": "Calculate Taxes", - "description": "Get tax details for a transaction.\n", - "operationId": "calculateTax", - "x-devcenter-metaData": { - "categoryTag": "Value_Added_Service" - }, - "tags": [ - "taxes" - ], - "parameters": [ - { - "name": "taxRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - }, - "comments": { - "type": "string", - "description": "Comments" - } - } - }, - "taxInformation": { - "type": "object", - "properties": { - "reportingDate": { - "type": "string", - "maxLength": 8, - "description": "Reporting date of transaction. Format: YYYYMMDD. Defaults to current date if not specified.\nAlso the default tax calculation date unless a different date is specified in `orderInformation.invoiceDetails.invoiceDate`.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "dateOverrideReason": { - "type": "string", - "maxLength": 50, - "description": "If a past or future date is specified in `orderInformation.invoiceDetails.invoiceDate`, then provide the reason for that for audit purposes.\nTypical reasons include: 'Return', 'Layaway', 'Imported'.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "nexus": { - "description": "Comma-separated list of states or provinces in which merchandise is taxable. Note merchandise may be still be non-taxable or tax exempt depending on the product taxability. Indicate the type of product you are selling in the product code field for product-level taxability rules to be applied. Do not use both the `taxInformation.nexus` and `taxInformation.noNexus` fields in your request. If you do not include this field in a tax calculation service request, the tax system makes its calculations as if you have nexus in every US state or Canadian province. 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).\n\nIf you indicate you do not have nexus in the destination state, jurisdiction level fields are left blank in the Tax Detail Report.\n\nOptional field for U.S. and Canadian taxes only. Either this field or `taxInformation.noNexus` is required if you do not have nexus in every state or province.\n\nNot applicable for international and value added taxes.\n", - "type": "array", - "items": { - "type": "string", - "maxLength": 2 - } - }, - "noNexus": { - "description": "Comma-separated list of states or provinces where you do not have nexus. Check with a tax advisor to determine where your business has nexus. Do not use both the `taxInformation.nexus` and `taxInformation.noNexus` fields in your request. If you do not include this field in a tax calculation service request, the tax system makes its calculations as if you have nexus in every US state or Canadian province.\nUse the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nIf you indicate you do not have nexus in the destination state, jurisdiction level fields are left blank in the Tax Detail Report.\n\nOptional field for U.S. and Canadian taxes only. Either this field or `taxInformation.nexus` is required if you do not have nexus in every state or province.\n\nNot applicable for international and value added taxes.\n", - "type": "array", - "items": { - "type": "string", - "maxLength": 2 - } - }, - "showTaxPerLineItem": { - "type": "string", - "description": "Whether or not to display tax amounts for each line item. This field can contain one of the following values:\n- `Yes` - Display tax amounts for each line item\n- `No` (default) - Do not display tax amounts for each line item\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "commitIndicator": { - "type": "boolean", - "description": "Indicates whether this is a committed tax transaction. For a committed tax transaction, the status in the Tax Detail Report is \u201cCommitted.\u201d For an uncommitted tax transaction, the status in the Tax Detail Report is \u201cUncommitted.\u201d Possible values:\n- `true`: This is a committed tax transaction.\n- `false` (default): This is not a committed tax transaction.\n\nA committed tax request is a tax service request that sets the status field in the Tax Detail Report to committed.\nThe committed status indicates that the amount calculated by the tax service is included in the amount of a capture or credit.\n\nUse a void service request to cancels a committed tax request or a committed refund tax request. The void transaction is included as a separate entry in the Tax Detail Report. The value of the status field is cancelled. The value of the link ID is the request ID of the committed tax request or refund tax request that was voided. You can use the value of the link ID to reconcile your orders.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "refundIndicator": { - "type": "boolean", - "description": "Indicates whether this is a refund tax transaction. For a refund tax transaction, amounts in the Tax Detail Report will be negative.\nPossible values:\n- `true`: This is a refund tax transaction.\n- `false` (default): This is not a refund tax transaction.\n\nA refund tax request is a tax service request that sets the transaction type field in the Tax Detail Report to refunded and makes the reported amount negative.\nTax amounts are returned as positive amounts in reply messages, but they are saved in reports as negative amounts which enables the reporting software to accurately calculate the aggregate amounts.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "amountDetails": { - "type": "object", - "properties": { - "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - }, - "billTo": { - "type": "object", - "properties": { - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the billing street address.\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the billing street address.\n\n#### Tax Calculation\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "Credit card billing city.\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes only. Not applicable to international and value added taxes.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "Credit card billing state or province.\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the billing address. The postal code must consist of 5 to 9 digits.\nIf the billing country is the U.S., the 9-digit postal code must follow this format:\n\n[5 digits][dash][4 digits]\n\n**Example**: 12345-6789\n\nIf the billing country is Canada, the 6-digit postal code must follow this format:\n\n[alpha][numeric][alpha] [numeric][alpha][numeric]\n\n**Example**: A1B 2C3\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Credit card billing country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\nIf `orderInformation.shipTo.country` is not provided, `orderInformation.billTo.country` is used in its place. If `orderInformation.billTo.country` is set to `US` or `CA`, then `orderInformation.billTo.postalCode` and `orderInformation.billTo.administrativeArea` are also required.\n\n#### Tax Calculation\nRequired for U.S., Canadian, international and value added taxes.\n" - } - } - }, - "shippingDetails": { - "type": "object", - "properties": { - "shipFromLocality": { - "type": "string", - "maxLength": 50, - "description": "City where the product is shipped from.\nThis field is used only when the `orderInformation.shipTo.administrativeArea` and `orderInformation.shipTo.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "shipFromCountry": { - "type": "string", - "maxLength": 2, - "description": "Country from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromAdministrativeArea` are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/ or rates applied to the transaction based on sourcing.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code where the product is shipped from.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "shipFromAdministrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromCountry` are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - } - } - }, - "shipTo": { - "type": "object", - "properties": { - "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)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", - "maxLength": 2 - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "locality": { - "type": "string", - "maxLength": 50, - "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address1": { - "type": "string", - "maxLength": 60, - "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address2": { - "type": "string", - "maxLength": 60, - "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - }, - "address3": { - "type": "string", - "maxLength": 60, - "description": "Third line of the shipping address.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" - } - } - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "productSKU": { - "type": "string", - "maxLength": 255, - "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" - }, - "productCode": { - "type": "string", - "maxLength": 255, - "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" - }, - "quantity": { - "type": "integer", - "minimum": 1, - "maximum": 999999999, - "default": 1, - "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "productName": { - "type": "string", - "maxLength": 255, - "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - }, - "unitPrice": { - "type": "string", - "maxLength": 15, - "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" - }, - "orderAcceptance": { - "type": "object", - "description": "The place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.", - "properties": { - "locality": { - "type": "string", - "maxLength": 50, - "description": "Order acceptance city. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "Order acceptance state. This field is not used unless the `orderInformation.orderAcceptance.locality` and `orderInformation.orderAcceptance.country` fields are present. 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).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Order acceptance postal code. This field is not used unless the `orderInformation.orderAcceptance.locality`, `orderInformation.orderAcceptance.administrativeArea`, and `orderInformation.orderAcceptance.country` fields are present.\nMust be sent at the line or offer level to be surfaced in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Order acceptance country. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.locality` fields are present. Use the [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - } - } - }, - "orderOrigin": { - "type": "object", - "description": "The location of the buyer at the time of placing the order.", - "properties": { - "locality": { - "type": "string", - "maxLength": 50, - "description": "Order origin city. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "Order origin state. This field is not used unless the `orderInformation.orderOrigin.locality` and `orderInformation.orderOrigin.country` fields are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Order origin postal code. This field is not used unless the `orderInformation.orderOrigin.locality`, `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\nMust be sent at the lineItem level to appear in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Order origin country. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.locality` fields are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - } - } - }, - "shipFromCountry": { - "type": "string", - "maxLength": 2, - "description": "Country from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromAdministrativeArea` are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/ or rates applied to the transaction based on sourcing.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "shipFromAdministrativeArea": { - "type": "string", - "maxLength": 2, - "description": "State from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromCountry` are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "shipFromLocality": { - "type": "string", - "maxLength": 50, - "description": "City where the product is shipped from.\nThis field is used only when the `orderInformation.shipTo.administrativeArea` and `orderInformation.shipTo.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "shipFromPostalCode": { - "type": "string", - "maxLength": 10, - "description": "Postal code where the product is shipped from.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" - }, - "buyerVatRegistrationNumber": { - "type": "string", - "maxLength": 25, - "description": "Buyer\u2019s VAT registration number.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n" - }, - "sellerVatRegistrationNumber": { - "type": "string", - "maxLength": 25, - "description": "VAT seller registration number.\n\nFor details, see \"International Taxes and Value-Added Tax (VAT)\" in [Tax Calculation Service Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/Tax_SCMP_API/html/).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n" - } - } - } - }, - "invoiceDetails": { - "type": "object", - "properties": { - "invoiceDate": { - "type": "string", - "maxLength": 8, - "description": "Date of the tax calculation. Use format YYYYMMDD. You can provide a date in the past if you are calculating tax for a refund and want to know what the tax was on the date the order was placed.\nYou can provide a date in the future if you are calculating the tax for a future date, such as an upcoming tax holiday.\n\nThe default is the date, in Pacific time, that the bank receives the request.\nKeep this in mind if you are in a different time zone and want the tax calculated with the rates that are applicable on a specific date.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" - } - } - }, - "orderAcceptance": { - "type": "object", - "description": "The place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.", - "properties": { - "locality": { - "type": "string", - "maxLength": 50, - "description": "Order acceptance city. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "Order acceptance state. This field is not used unless the `orderInformation.orderAcceptance.locality` and `orderInformation.orderAcceptance.country` fields are present. 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).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Order acceptance postal code. This field is not used unless the `orderInformation.orderAcceptance.locality`, `orderInformation.orderAcceptance.administrativeArea`, and `orderInformation.orderAcceptance.country` fields are present.\nMust be sent at the line or offer level to be surfaced in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Order acceptance country. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.locality` fields are present. Use the [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" - } - } - }, - "orderOrigin": { - "type": "object", - "description": "The location of the buyer at the time of placing the order.", - "properties": { - "locality": { - "type": "string", - "maxLength": 50, - "description": "Order origin city. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - }, - "administrativeArea": { - "type": "string", - "maxLength": 2, - "description": "Order origin state. This field is not used unless the `orderInformation.orderOrigin.locality` and `orderInformation.orderOrigin.country` fields are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - }, - "postalCode": { - "type": "string", - "maxLength": 10, - "description": "Order origin postal code. This field is not used unless the `orderInformation.orderOrigin.locality`, `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\nMust be sent at the lineItem level to appear in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - }, - "country": { - "type": "string", - "maxLength": 2, - "description": "Order origin country. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.locality` fields are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" - } - } - } - } - }, - "merchantInformation": { - "type": "object", - "properties": { - "vatRegistrationNumber": { - "type": "string", - "maxLength": 21, - "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - } - } - }, - "buyerInformation": { - "type": "object", - "properties": { - "vatRegistrationNumber": { - "type": "string", - "maxLength": 20, - "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "vasV2PaymentsPost201Response", - "type": "object", - "properties": { - "_links": { - "type": "object", - "properties": { - "void": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "This is the endpoint of the resource that was created by the successful request." - }, - "method": { - "type": "string", - "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." - } - } - } - } - }, - "id": { - "type": "string", - "maxLength": 26, - "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - COMPLETED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "submitLocalDateTime": { - "type": "string", - "maxLength": 14, - "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" - }, - "ownerMerchantId": { - "type": "string", - "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" - } - } - }, - "taxInformation": { - "type": "object", - "properties": { - "commitIndicator": { - "type": "boolean", - "description": "Indicates whether this is a committed tax transaction. For a committed tax transaction, the status in the Tax Detail Report is \u201cCommitted.\u201d For an uncommitted tax transaction, the status in the Tax Detail Report is \u201cUncommitted.\u201d Possible values:\n- `true`: This is a committed tax transaction.\n- `false` (default): This is not a committed tax transaction.\n\nA committed tax request is a tax service request that sets the status field in the Tax Detail Report to committed.\nThe committed status indicates that the amount calculated by the tax service is included in the amount of a capture or credit.\n\nUse a void service request to cancels a committed tax request or a committed refund tax request. The void transaction is included as a separate entry in the Tax Detail Report. The value of the status field is cancelled. The value of the link ID is the request ID of the committed tax request or refund tax request that was voided. You can use the value of the link ID to reconcile your orders.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - }, - "refundIndicator": { - "type": "boolean", - "description": "Indicates whether this is a refund tax transaction. For a refund tax transaction, amounts in the Tax Detail Report will be negative.\nPossible values:\n- `true`: This is a refund tax transaction.\n- `false` (default): This is not a refund tax transaction.\n\nA refund tax request is a tax service request that sets the transaction type field in the Tax Detail Report to refunded and makes the reported amount negative.\nTax amounts are returned as positive amounts in reply messages, but they are saved in reports as negative amounts which enables the reporting software to accurately calculate the aggregate amounts.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" - } - } - }, - "orderInformation": { - "type": "object", - "properties": { - "exemptAmount": { - "type": "string", - "maxLength": 15, - "description": "Total amount of tax exempt amounts. This value is the sum of the values for all the `orderInformation.lineItems[].exemptAmount` fields in the tax calculation request.\n" - }, - "taxableAmount": { - "type": "string", - "maxLength": 15, - "description": "Total amount of all taxable amounts. This value is the sum of the values for all the `orderInformation.lineItems[].taxAmount` fields in the tax calculation request.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total amount of tax for all lineItems in the tax calculation request.\n" - }, - "lineItems": { - "type": "array", - "items": { - "type": "object", - "properties": { - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 15, - "description": "Allowed tax types:\n- city\n- county\n- state\n- national\n- special\n" - }, - "amount": { - "type": "string", - "maxLength": 15, - "description": "Amount corresponding to different types of taxes applied.\n" - } - } - } - }, - "jurisdiction": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 15, - "description": "Type of tax jurisdiction for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n\nPossible values:\n- `city`\n- `county`\n- `state`\n- `country`\n- `special`\n" - }, - "taxName": { - "type": "string", - "maxLength": 15, - "description": "Name of the jurisdiction tax for the item. For example, CA State Tax. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Jurisdiction tax amount for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "taxable": { - "type": "string", - "maxLength": 15, - "description": "Jurisdiction taxable amount for the item, not including product level exemptions. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "name": { - "type": "string", - "maxLength": 15, - "description": "Free-text description of the jurisdiction for the item. For example, San Mateo County. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "code": { - "type": "string", - "maxLength": 15, - "description": "Jurisdiction code assigned by the tax provider. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "rate": { - "type": "string", - "maxLength": 15, - "description": "Jurisdiction tax rate for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "region": { - "type": "string", - "maxLength": 15, - "description": "Free-text description of the jurisdiction region for the item. For example, CA (California State) or GB (Great Britain). Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "country": { - "type": "string", - "maxLength": 15, - "description": "Tax jurisdiction country for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - } - } - } - }, - "exemptAmount": { - "type": "string", - "maxLength": 15, - "description": "Exempt amount for the lineItem. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" - }, - "taxableAmount": { - "type": "string", - "maxLength": 15, - "description": "Portion of the item amount that is taxable.\n" - }, - "taxAmount": { - "type": "string", - "maxLength": 15, - "description": "Total tax for the item. This value is the sum of all taxes applied to the item.\n" - } - } - } - }, - "taxDetails": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "maxLength": 15, - "description": "Allowed tax types:\n- city\n- county\n- state\n- national\n- special\n" - }, - "amount": { - "type": "string", - "maxLength": 15, - "description": "Amount corresponding to different types of taxes applied.\n" - } - } - } - }, - "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "type": "object", - "title": "vasV2PaymentsPost400Response", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - PROCESSOR_UNAVAILABLE\n - AVS_FAILED\n - INVALID_MERCHANT_CONFIGURATION\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "vasV2PaymentsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Basic Tax Calculation Request", - "sample-name": "Tax Calculation", - "value": { - "clientReferenceInformation": { - "code": "TAX_TC001" - }, - "orderInformation": { - "billTo": { - "country": "US", - "address1": "1 Market St", - "postalCode": 94105, - "locality": "San Francisco", - "administrativeArea": "CA" - }, - "amountDetails": { - "currency": "USD" - }, - "lineItems": [ - { - "productSKU": "07-12-00657", - "productName": "Chewing Gum", - "productCode": 50161815, - "quantity": 1, - "unitPrice": 1200 - }, - { - "productSKU": "07-12-00659", - "productName": "Sugar Cookies", - "productCode": 50181905, - "quantity": 1, - "unitPrice": 1240 - }, - { - "productSKU": "07-12-00658", - "productName": "Carbonated Water", - "productCode": 5020.11, - "quantity": 1, - "unitPrice": 9001 - } - ] - }, - "taxInformation": { - "showTaxPerLineItem": "Yes" - } - } - }, - "example1": { - "summary": "Tax Refund Request", - "sample-name": "Tax Refund Calculation", - "value": { - "clientReferenceInformation": { - "code": "TAX_TC001" - }, - "orderInformation": { - "billTo": { - "country": "US", - "address1": "1 Market St", - "postalCode": 94105, - "locality": "San Francisco", - "administrativeArea": "CA" - }, - "shipTo": { - "country": "US", - "address1": "123 Russel St.", - "postalCode": 32401, - "locality": "Panama City", - "administrativeArea": "FL" - }, - "shippingDetails": { - "shipFromCountry": "CA", - "shipFromLocality": "Cambridge Bay", - "shipFromAdministrativeArea": "NL", - "shipFromPostalCode": "A0G 1T0" - }, - "amountDetails": { - "currency": "USD" - }, - "lineItems": [ - { - "productSKU": "07-12-00657", - "productName": "Chewing Gum", - "productCode": 50161815, - "quantity": 1, - "unitPrice": 1200 - }, - { - "productSKU": "07-12-00659", - "productName": "Sugar Cookies", - "productCode": 50181905, - "quantity": 1, - "unitPrice": 1240 - }, - { - "productSKU": "07-12-00658", - "productName": "Carbonated Water", - "productCode": 5020.11, - "quantity": 1, - "unitPrice": 9001 - } - ] - }, - "taxInformation": { - "showTaxPerLineItem": "Yes", - "refundIndicator": true - }, - "merchantInformation": { - "vatRegistrationNumber": "abcdef" - } - } - }, - "example2": { - "summary": "Committed Tax Call Request", - "sample-name": "Committed Tax Calculation", - "value": { - "clientReferenceInformation": { - "code": "TAX_TC001" - }, - "orderInformation": { - "billTo": { - "country": "US", - "address1": "1 Market St", - "postalCode": 94105, - "locality": "San Francisco", - "administrativeArea": "CA" - }, - "shipTo": { - "country": "US", - "address1": "123 Russel St.", - "postalCode": 32401, - "locality": "Panama City", - "administrativeArea": "FL" - }, - "shippingDetails": { - "shipFromCountry": "CA", - "shipFromLocality": "Cambridge Bay", - "shipFromAdministrativeArea": "NL", - "shipFromPostalCode": "A0G 1T0" - }, - "amountDetails": { - "currency": "USD" - }, - "lineItems": [ - { - "productSKU": "07-12-00657", - "productName": "Chewing Gum", - "productCode": 50161815, - "quantity": 1, - "unitPrice": 1200 - }, - { - "productSKU": "07-12-00659", - "productName": "Sugar Cookies", - "productCode": 50181905, - "quantity": 1, - "unitPrice": 1240 - }, - { - "productSKU": "07-12-00658", - "productName": "Carbonated Water", - "productCode": 5020.11, - "quantity": 1, - "unitPrice": 9001 - } - ] - }, - "taxInformation": { - "showTaxPerLineItem": "Yes", - "commitIndicator": true - }, - "merchantInformation": { - "vatRegistrationNumber": "abcdef" - } - } - }, - "example3": { - "summary": "Committed Tax Refund Call Request", - "sample-name": "Committed Tax Refund Calculation", - "value": { - "clientReferenceInformation": { - "code": "TAX_TC001" - }, - "orderInformation": { - "billTo": { - "country": "US", - "address1": "1 Market St", - "postalCode": 94105, - "locality": "San Francisco", - "administrativeArea": "CA" - }, - "shipTo": { - "country": "US", - "address1": "123 Russel St.", - "postalCode": 32401, - "locality": "Panama City", - "administrativeArea": "FL" - }, - "shippingDetails": { - "shipFromCountry": "CA", - "shipFromLocality": "Cambridge Bay", - "shipFromAdministrativeArea": "NL", - "shipFromPostalCode": "A0G 1T0" - }, - "amountDetails": { - "currency": "USD" - }, - "lineItems": [ - { - "productSKU": "07-12-00657", - "productName": "Chewing Gum", - "productCode": 50161815, - "quantity": 1, - "unitPrice": 1200 - }, - { - "productSKU": "07-12-00659", - "productName": "Sugar Cookies", - "productCode": 50181905, - "quantity": 1, - "unitPrice": 1240 - }, - { - "productSKU": "07-12-00658", - "productName": "Carbonated Water", - "productCode": 5020.11, - "quantity": 1, - "unitPrice": 9001 - } - ] - }, - "taxInformation": { - "showTaxPerLineItem": "Yes", - "commitIndicator": true, - "refundIndicator": true - }, - "merchantInformation": { - "vatRegistrationNumber": "abcdef" - } - } - } - } - } - }, - "/vas/v2/tax/{id}": { - "patch": { - "summary": "Void Taxes", - "description": "Pass the Tax Request ID in the PATCH request to void the committed tax calculation.", - "tags": [ - "taxes" - ], - "operationId": "voidTax", - "x-devcenter-metaData": { - "categoryTag": "Value_Added_Service" - }, - "parameters": [ - { - "name": "voidTaxRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - }, - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - } - } - } - } - } - } - } - }, - { - "name": "id", - "in": "path", - "description": "The tax ID returned from a previous request.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successful response.", - "schema": { - "title": "vasV2TaxVoid200Response", - "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" - }, - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" - }, - "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" - } - } - }, - "voidAmountDetails": { - "type": "object", - "properties": { - "voidAmount": { - "type": "string", - "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" - } - } - } - } - } - }, - "400": { - "description": "Invalid request.", - "schema": { - "title": "vasV2TaxVoidsPost400Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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 - INVALID_DATA\n - NOT_VOIDABLE\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "field": { - "type": "string", - "description": "This is the flattened JSON object field name/path that is either missing or invalid." - }, - "reason": { - "type": "string", - "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - } - } - } - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.", - "schema": { - "title": "vasV2TaxVoidsPost502Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" - }, - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - } - }, - "x-example": { - "example0": { - "summary": "Void a Committed Tax Call", - "value": { - "clientReferenceInformation": { - "code": "TAX_TC001" - } - }, - "depends": { - "example": { - "path": "/vas/v2/tax", - "verb": "patch", - "exampleId": "example0" - }, - "fieldMapping": [ - { - "sourceField": "id", - "destinationField": "id", - "fieldTypeInDestination": "path" - } - ] - } - } - } - } - }, - "/kms/v2/keys-sym": { - "post": { - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "summary": "Create Shared-Secret Keys", - "description": "Create one or more Shared-Secret Keys\n", - "tags": [ - "Symmetric Key Management" - ], - "operationId": "createV2SharedSecretKeys", - "parameters": [ - { - "name": "createSharedSecretKeysRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "required": [ - "organizationId" - ], - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "kmsV2KeysSymPost201Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number\n" - }, - "key": { - "type": "string", - "description": "value of the key\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n" - }, - "expirationDate": { - "type": "string", - "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/kms/v2/keys-sym/{keyId}": { - "get": { - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "summary": "Retrieves shared secret key details", - "description": "Retrieves keys details by providing the key id.", - "tags": [ - "Symmetric Key Management" - ], - "operationId": "getKeyDetails", - "parameters": [ - { - "name": "keyId", - "in": "path", - "description": "Key ID.\n", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successful response.", - "schema": { - "title": "kmsV2KeysSymGet200Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" - }, - "keyInformation": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "keyId": { - "type": "string", - "description": "Key serial number\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" - }, - "expirationDate": { - "type": "string", - "description": "The expiration time in UTC.\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key\n" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid Request", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/kms/v2/keys-sym/deletes": { - "post": { - "summary": "Delete one or more Symmetric keys", - "description": "'Delete one or more Symmetric keys'\n", - "tags": [ - "Symmetric Key Management" - ], - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "operationId": "deleteBulkSymmetricKeys", - "parameters": [ - { - "name": "deleteBulkSymmetricKeysRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "required": [ - "organizationId", - "keyId" - ], - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number" - } - } - } - } - } - } - } - ], - "responses": { - "200": { - "description": "Successful response\n", - "schema": { - "title": "kmsV2KeysSymDeletesPost200Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "keyId": { - "type": "string", - "description": "Key serial number\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key\n" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/kms/v2/keys-asym": { - "post": { - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "summary": "Create one or more PKCS#12 keys", - "description": "'Create one or more PKCS#12 keys'\n", - "tags": [ - "Asymmetric Key Management" - ], - "operationId": "createP12Keys", - "parameters": [ - { - "name": "createP12KeysRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "required": [ - "cert", - "organizationId" - ], - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "cert": { - "type": "string", - "description": "Certificate Signing Request(csr), one needs to use the contents of the csr created for the same organizationId. Please extract string from '\\n' and '-----BEGIN CERTIFICATE REQUEST-----','-----END CERTIFICATE REQUEST-----'\n" - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "kmsV2KeysAsymPost201Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number\n" - }, - "key": { - "type": "string", - "description": "value of the key\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n" - }, - "expirationDate": { - "type": "string", - "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key" - }, - "alias": { - "type": "string", - "description": "Key alias" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - }, - "certificateInformation": { - "type": "array", - "items": { - "type": "object", - "properties": { - "alias": { - "type": "string", - "description": "Key alias" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number\n" - }, - "key": { - "type": "string", - "description": "value of the key\n" - }, - "expirationDate": { - "type": "string", - "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" - } - } - } - } - } - } - }, - "400": { - "description": "Invalid Request", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/kms/v2/keys-asym/{keyId}": { - "get": { - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "summary": "Retrieves PKCS#12 key details", - "description": "Retrieves keys details by providing the key id.", - "tags": [ - "Asymmetric Key Management" - ], - "operationId": "getP12KeyDetails", - "parameters": [ - { - "name": "keyId", - "in": "path", - "description": "Key ID.\n", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successful response.", - "schema": { - "title": "kmsV2KeysAsymGet200Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "keyInformation": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" - }, - "expirationDate": { - "type": "string", - "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key" - }, - "alias": { - "type": "string", - "description": "Key alias" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid Request", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/kms/v2/keys-asym/deletes": { - "post": { - "summary": "Delete one or more PKCS#12 keys", - "description": "'Delete one or more PKCS#12 keys'\n", - "tags": [ - "Asymmetric Key Management" - ], - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "operationId": "deleteBulkP12Keys", - "parameters": [ - { - "name": "deleteBulkP12KeysRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "required": [ - "organizationId", - "keyId" - ], - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number" - } - } - } - } - } - } - } - ], - "responses": { - "200": { - "description": "Successful response\n", - "schema": { - "title": "kmsV2KeysAsymDeletesPost200Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - }, - "/kms/v2/keys-sym/verifi": { - "post": { - "x-devcenter-metaData": { - "categoryTag": "Key_Management", - "firstLevelApiLifeCycle": "hidden", - "secondLevelApiLifeCycle": "hidden", - "apiLifeCycle": "hidden" - }, - "summary": "Create Shared-Secret Keys as per verifi spec", - "description": "Create one or more Shared-Secret Keys as per Verifi spec with 32 chars, store digest algo during key generation.\n", - "tags": [ - "Symmetric Key Management" - ], - "operationId": "createV2SharedSecretKeys-verifi", - "parameters": [ - { - "name": "v-ic-domain", - "in": "header", - "description": "domain", - "required": true, - "type": "string" - }, - { - "name": "createSharedSecretKeysVerifiRequest", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "required": [ - "organizationId" - ], - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "digestAlgorithm": { - "type": "string", - "description": "Algorithm for message signature authentication\n", - "enum": [ - "HMACSHA1", - "HMACSHA2" - ], - "default": "HMACSHA2" - } - } - } - } - } - } - } - ], - "responses": { - "201": { - "description": "Successful response.", - "schema": { - "title": "kmsV2KeysSymPost201Response", - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "status": { - "type": "string", - "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" - }, - "clientReferenceInformation": { - "type": "object", - "properties": { - "code": { - "type": "string", - "maxLength": 50, - "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" - }, - "comments": { - "type": "string", - "description": "Comments" - }, - "partner": { - "type": "object", - "properties": { - "developerId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" - }, - "solutionId": { - "type": "string", - "maxLength": 8, - "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" - } - } - } - } - }, - "keyInformation": { - "type": "array", - "items": { - "type": "object", - "description": "key information\n", - "properties": { - "organizationId": { - "type": "string", - "description": "Merchant Id\n" - }, - "referenceNumber": { - "type": "string", - "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" - }, - "keyId": { - "type": "string", - "description": "Key Serial Number\n" - }, - "key": { - "type": "string", - "description": "value of the key\n" - }, - "status": { - "type": "string", - "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n" - }, - "expirationDate": { - "type": "string", - "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" - }, - "message": { - "type": "string", - "description": "message in case of failed key" - }, - "errorInformation": { - "type": "object", - "properties": { - "reason": { - "type": "string", - "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" - }, - "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" - } - } - } - } - } - } - } - } - } - } - } - }, - "400": { - "description": "Invalid request.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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" - }, - "message": { - "type": "string", - "description": "The detail message related to the status and reason listed above." - } - } - } - }, - "502": { - "description": "Unexpected system error or system timeout.\n", - "schema": { - "type": "object", - "properties": { - "submitTimeUtc": { - "type": "string", - "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" - }, - "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." - } - } - } - } - } - } - } - } +{ + "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" + }, + "host": "apitest.cybersource.com", + "schemes": [ + "https" + ], + "basePath": "/", + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "tags": [ + { + "name": "payments", + "description": "A payment authorizes the amount for the transaction. There are a number of supported payment\ninstruments, such as Credit Card, Debit Card, e-Wallet, and Alternative Payments. A payment\nresponse includes the status of the request. It also includes processor-specific information\nwhen the request is successful and errors if unsuccessful.\n" + }, + { + "name": "capture", + "description": "When you are ready to fulfill a customer\u2019s order and transfer funds from the customer\u2019s\nbank to your bank, capture the payment for that order.\n" + }, + { + "name": "reversal", + "description": "An authorization reversal releases the hold that the payment placed on the customer\u2019s funds." + }, + { + "name": "refund", + "description": "A refund is a follow-on transaction that uses the ID returned from either a payment or capture request.\n" + }, + { + "name": "credit", + "description": "A credit is a stand-alone transaction that is not linked to any previous transactions. It takes money from\nyour merchant bank account and returns it to the customer.\n" + }, + { + "name": "void", + "description": "A void cancels a payment or capture. A transaction can be voided only when CyberSource has not already\nsubmitted the capture to your processor. You cannot undo a void.\n" + }, + { + "name": "TransactionBatches", + "description": "Get a list of batch files or details of Individual file processed through the Offline Transaction Submission Services.\n" + }, + { + "name": "AccountValidations", + "description": "A eCheck account validation enable you to determine, in real time, whether to\nproceed with an electronic check debit or the creation of a recurring electronic check\nsubscription.\n" + }, + { + "name": "Customer", + "description": "The Customer token can be linked to multiple Payment Instruments and Shipping Addresses.\nWith one Payment Instrument and Shipping Address designated as the default.\nIt stores merchant reference information for the Customer such as email and merchant defined data.\n" + }, + { + "name": "Customer Shipping Address", + "description": "The Customer Shipping Address token is linked to a Customer.\nIt stores shipping information in relation to the Customer.\n" + }, + { + "name": "Customer Payment Instrument", + "description": "The Customer Payment Instrument token is linked to a Customer and an Instrument Identifier.\nIt stores additional information in relation to a card number(PAN) or bank account (echeck).\n" + }, + { + "name": "Payment Instrument", + "description": "The stand-alone Payment Instrument token is linked to an Instrument Identifier.\nIt stores additional information in relation to a card number(PAN) or bank account (echeck).\n" + }, + { + "name": "Instrument Identifier", + "description": "The Instrument Identifier token represents a unique card number(PAN) or bank account (echeck).\nIt can also be associated with a Network Token that can be used for payment transactions.\n" + }, + { + "name": "Flex API" + }, + { + "name": "Decision Manager", + "description": "REST API for the Decision Manager Service" + }, + { + "name": "Risk Services", + "description": "REST APIs for Risk Services" + }, + { + "name": "Payouts", + "description": "A payout enables an originator to send funds on behalf of itself, merchants, or customers to credit card\naccounts using an Original Credit Transaction (OCT). An originator is a merchant, government entity, or\ncorporation with a merchant account from an acquiring bank.\n" + }, + { + "name": "installments", + "description": "Provides Visa Installment & Issuer Installment Solution for CyberSource Merchant.\nThis API can be used for sending an installment inquiry transaction to either Visa (for Visa Installments)\nor to the cardholder's issuing bank (for issuer funded installments). The response for this API call\nwill contain list of installment plans that the card holder might be eligible for. This service is applicable\nfor Credit Cards only.\n" + }, + { + "name": "Plans", + "description": "Create and manage Plans for subscriptions.\n" + }, + { + "name": "Subscriptions", + "description": "Create and manage Recurring Subscriptions.\n\nYou have option to link subscription to plan or create independent subscriptions.\n" + }, + { + "name": "Reports", + "description": "API for creation and retrieval of Reports" + }, + { + "name": "Report Definitions", + "description": "Get report definition information" + }, + { + "name": "Report Downloads", + "description": "API for creation and retrieval of Reports" + }, + { + "name": "Report Subscriptions", + "description": "API for creation and retrieval of Report Subscriptions" + }, + { + "name": "Net Fundings", + "description": "API for retrieving the netfunding data for an account or a merchant" + }, + { + "name": "Notification Of Changes", + "description": "API for Notification Of Change" + }, + { + "name": "Purchase And Refund Details", + "description": "API for Purchase and Refund Details" + }, + { + "name": "Payment Batch Summaries", + "description": "API for payment batch summary reports" + }, + { + "name": "Conversion Details", + "description": "API for retrieving conversion data for merchant" + }, + { + "name": "Download DTD", + "description": "API to download report DTDs" + }, + { + "name": "Download XSD", + "description": "API to download report XSDs" + }, + { + "name": "Chargeback Summaries", + "description": "API for requesting Chargeback Summaries." + }, + { + "name": "Chargeback Details", + "description": "API for requesting Chargeback Details." + }, + { + "name": "Retrieval Summaries", + "description": "API for requesting Retrieval Summaries" + }, + { + "name": "Retrieval Details", + "description": "API for requesting Retrieval Details." + }, + { + "name": "Interchange Clearing Level Details", + "description": "API for requesting Interchange Clearing Level data for an account or a merchant." + }, + { + "name": "File Details", + "description": "API to access file information" + }, + { + "name": "File Downloads", + "description": "API to download a file" + }, + { + "name": "invoices", + "description": "Offer your customers a simple, convenient, and fast way to pay with the new online invoicing tool.\n" + }, + { + "name": "invoiceSettings", + "description": "Update the settings for the invoice payment page.\n" + }, + { + "name": "management", + "description": "management rest resources" + }, + { + "name": "account number", + "description": "account number lookup" + }, + { + "name": "taxes", + "description": "tax calculation service" + }, + { + "name": "surcharge", + "description": "Surcharge service" + }, + { + "name": "key-management", + "description": "Generate and deactivate batches of keys.\n" + }, + { + "name": "Merchant Boarding", + "description": "Manage Boarding Registrations" + }, + { + "name": "Create_New_Webhooks", + "description": "Create a new webhook connection\n" + }, + { + "name": "Manage_Webhooks", + "description": "- Create and manage your webhooks. This will allow for you to set up new webhooks, update existing webhooks, test webhooks, or delete them.\n" + }, + { + "name": "Create and Update devices", + "description": "Create and update terminal devices." + }, + { + "name": "Device Search", + "description": "Search and Retrieve Devices." + }, + { + "name": "Device De-Association", + "description": "Remove Association of a Device." + } + ], + "x-devcenter-metaData": { + "categoryTagArray": [ + { + "name": "Payments", + "description": "For more information about Payments transactions, see the [Payments Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.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 Token Management, see the [Token Management Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html)." + }, + { + "name": "Flex_Microform", + "description": "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": "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).\n" + }, + { + "name": "Installments", + "description": "For more information about Installment contact Cybersource Support. For Visa installments contact VISthroughCYBS@visa.com" + }, + { + "name": "Recurring_Billing_Subscriptions", + "description": "Recurring Billing & Subscriptions" + }, + { + "name": "BIN_Lookup", + "description": "Cybersource BIN Lookup REST API provides Bank Identification Number (BIN) attributes, such as card type and issuer information, associated with a payment card.\n\n For more information on Token Management (TMS) see the Token Management section of the API reference, or the [Token Management Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html).\n" + }, + { + "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).\n" + }, + { + "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/api/developer-guides/dita-invoicing/Introduction.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": "Key_Management" + }, + { + "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/api/developer-guides/webhooks.html)." + } + ] + }, + "paths": { + "/pts/v2/payments": { + "post": { + "summary": "Process a Payment", + "description": "A payment authorizes the amount for the transaction. There are a number of supported payment feature, such as E-commerce and Card Present - Credit Card/Debit Card, Echeck, e-Wallets, Level II/III Data, etc..\n\nA payment response includes the status of the request. It also includes processor-specific information when the request is successful and errors if unsuccessful. See the [Payments Developer Guides Page](https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html).\n\nAuthorization can be requested with Capture, Decision Manager, Payer Authentication(3ds), and Token Creation.\n", + "tags": [ + "payments" + ], + "operationId": "createPayment", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "testingTriggers": "https://developer.cybersource.com/hello-world/testing-guide.html", + "responseCodes": "https://developer.cybersource.com/api/reference/response-codes.html", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "createPaymentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "actionList": { + "type": "array", + "description": "Array of actions (one or more) to be included in the payment to invoke bundled serviecs along with payment.\n\nPossible values are one or more of follows:\n\n - `DECISION_SKIP`: Use this when you want to skip Decision Manager service(s).\n\n - `TOKEN_CREATE`: Use this when you want to create a token from the card/bank data in your payment request.\n\n - `CONSUMER_AUTHENTICATION`: Use this when you want to check if a card is enrolled in Payer Authentioncation along with your payment request.\n\n - `VALIDATE_CONSUMER_AUTHENTICATION`: Use this after you acquire a Payer Authentioncation result that needs to be included for your payment request.\n", + "items": { + "type": "string" + } + }, + "actionTokenTypes": { + "type": "array", + "description": "CyberSource tokens types you are performing a create on.\nIf not supplied the default token type for the merchants token vault will be used.\n\nValid values:\n- customer\n- paymentInstrument\n- instrumentIdentifier\n- shippingAddress\n", + "items": { + "type": "string" + } + }, + "capture": { + "type": "boolean", + "description": "Indicates whether to also include a capture in the submitted authorization request or not.\n\nPossible values:\n- `true`: Include a capture with an authorization request.\n- `false`: (default) Do not include a capture with an authorization request.\n\n#### Used by\n**Authorization and Capture**\nOptional field.\n", + "default": false + }, + "processorId": { + "type": "string", + "maxLength": 3, + "description": "Value that identifies the processor/acquirer to use for the transaction. This value is supported only for\n**CyberSource through VisaNet**.\n\nContact CyberSource Customer Support to get the value for this field.\n" + }, + "businessApplicationId": { + "type": "string", + "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" + }, + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "commerceIndicatorLabel": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "purchaseLevel": { + "type": "string", + "maxLength": 1, + "description": "Set this field to 3 to indicate that the request includes Level III data." + }, + "paymentId": { + "type": "string", + "maxLength": 28, + "description": "This field is to accept the id of credit/capture in the body of L1 requests so the type of void can be identified and processed correctly downstream." + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "industryDataType": { + "type": "string", + "maxLength": 20, + "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, + "authorizationOptions": { + "type": "object", + "properties": { + "authType": { + "type": "string", + "maxLength": 15, + "description": "Authorization type. Possible values:\n\n - `AUTOCAPTURE`: automatic capture.\n - `STANDARDCAPTURE`: standard capture.\n - `VERBAL`: forced capture. Include it in the payment request for a forced capture. Include it in the capture request for a verbal payment.\n\n#### Asia, Middle East, and Africa Gateway; Cielo; Comercio Latino; and CyberSource Latin American Processing\nSet this field to `AUTOCAPTURE` and include it in a bundled request to indicate that you are requesting an automatic capture. If your account is configured to enable automatic captures, set this field to `STANDARDCAPTURE` and include it in a standard authorization or bundled request to indicate that you are overriding an automatic capture. For more information, see the `auth_type` field description in [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Forced Capture\nSet this field to `VERBAL` and include it in the authorization request to indicate that you are performing a forced capture; therefore, you receive the authorization code outside the CyberSource system.\n\n#### Verbal Authorization\nSet this field to `VERBAL` and include it in the capture request to indicate that the request is for a verbal authorization. For more information, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" + }, + "panReturnIndicator": { + "type": "string", + "maxLength": 1, + "description": "#### Visa Platform Connect\nThe field contains the PAN translation indicator for American Express Contactless Transaction. Valid value is\u00a0\n\n1- Expresspay Translation, PAN request\n2- Expresspay Translation, PAN and Expiry date request\n" + }, + "verbalAuthCode": { + "type": "string", + "maxLength": 7, + "description": "Authorization code.\n\n#### Forced Capture\nUse this field to send the authorization code you received from a payment that you authorized\noutside the CyberSource system.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit purchase.\n\n#### Verbal Authorization\nUse this field in CAPTURE API to send the verbally received authorization code.\n\nFor processor-specific information, see the `auth_code` field description in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" + }, + "verbalAuthTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Transaction ID (TID).\n\n#### FDMS South\nThis field is required for verbal authorizations and forced captures with the American Express card type to comply\nwith the CAPN requirements:\n- Forced capture: Obtain the value for this field from the authorization response.\n- Verbal authorization: You cannot obtain a value for this field so CyberSource uses the default value of `000000000000000` (15\nzeros).\n" + }, + "authIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag that specifies the purpose of the authorization.\n\nPossible values:\n - **0**: Preauthorization\n - **1**: Final authorization\n\nTo set the default for this field, contact CyberSource Customer Support.\n\n#### Barclays and Elavon\nThe default for Barclays and Elavon is 1 (final authorization). To change the default for this field, contact CyberSource Customer Support.\n\n#### CyberSource through VisaNet\nWhen the value for this field is 0, it corresponds to the following data in the TC 33 capture file:\n - Record: CP01 TCR0\n - Position: 164\n - Field: Additional Authorization Indicators\nWhen the value for this field is 1, it does not correspond to any data in the TC 33 capture file.\n" + }, + "partialAuthIndicator": { + "type": "boolean", + "description": "Flag that indicates whether the transaction is enabled for partial authorization. When the request includes this\nfield, this value overrides the information in your account. Possible values:\n- `true`: Enable the transaction for partial authorization.\n- `false`: Do not enable the transaction for partial authorization.\n\n#### PIN debit\nRequired field for partial authorizations that use PIN debit purchase; otherwise, not used.\n\n#### Used by\n**Authorization**\nOptional field.\n\n#### CyberSource through VisaNet\nTo set the default for this field, contact CyberSource Customer Support.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR0\n- Position: 164\n- Field: Additional Authorization Indicators\n" + }, + "balanceInquiry": { + "type": "boolean", + "description": "Flag that indicates whether to return balance information.\n\nPossible values:\n- `true`: Return balance information.\n- `false`: Do not return balance information.\n\n#### Used by\n**Authorization**\nRequired for a balance inquiry; otherwise, not used.\n\n#### PIN debit\nRequired for a balance inquiry request of a PIN debit purchase; otherwise, not used.\n" + }, + "ignoreAvsResult": { + "type": "boolean", + "description": "Flag for a sale request that indicates whether to allow the capture service to run even when the authorization\nreceives an AVS decline, as indicated by a reply flag value of DAVSNO.\n\nPossible values:\n- `true`: Ignore the results of AVS checking and run the capture service.\n- `false` (default): If the authorization receives an AVS decline, do not run the capture service.\nWhen the value of this field is `true`, the list in the `processingInformation.authorizationOptions.declineAvsFlags` field is ignored.\n\n#### Used by\n**Authorization**\nOptional field.\nString (3)\n", + "default": false + }, + "declineAvsFlags": { + "type": "array", + "description": "Comma-separated list of AVS flags that cause the reply flag `DAVSNO` to be returned.\n\n**Important** To receive declines for the AVS code `N`, you must include the value `N` in the comma-separated\nlist.\n\n ### AVS Codes for Cielo 3.0 and CyberSource Latin American Processing\n\n **Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports.\n In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America.\n The information in this section is for the specific processing connection called CyberSource Latin American Processing.\n It is not for any other Latin American processors that CyberSource supports.\n\n|AVS Code|Description|\n|--- |--- |\n|D|Partial match: postal code and address match.|\n|E|Not supported: AVS is not supported for this card type. _or_ Invalid: the acquirer returned an unrecognized value for the AVS response.|\n|F|Partial match: postal code matches, but CPF and address do not match.*|\n|G|Not supported: AVS not supported or not verified.|\n|I|No match: AVS information is not available.|\n|K|Partial match: CPF matches, but postal code and address do not match.*|\n|L|Partial match: postal code and CPF match, but address does not match.*|\n|N|No match: postal code, CPF, and address do not match.*|\n|O|Partial match: CPF and address match, but postal code does not match.*|\n|R|Not supported: your implementation does not support AVS _or_ System unavailable.|\n|T|Partial match: address matches, but postal code and CPF do not match.*|\n|V|Match: postal code, CPF, and address match.*|\n|* CPF (Cadastro de Pessoas Fisicas) is required only for Redecard in Brazil.||\n\n### AVS Codes for All Other Processors\n\n**Note** The list of AVS codes for all other processors follows these descriptions of the processor-specific information for these codes.\n\n#### American Express Cards\nFor American Express cards only, you can receive Visa and CyberSource\nAVS codes in addition to the American Express AVS codes.\n\n**Note** For CyberSource through VisaNet, the American Express AVS codes are converted to Visa\nAVS codes before they are returned to you. As a result, you will not receive American Express AVS codes for\nthe American Express card type.

\n\n_American Express Card codes_: `F`, `H`, `K`, `L`, `O`, `T`, `V`\n\n#### Domestic and International Visa Cards\nThe international and domestic alphabetic AVS codes are the Visa standard AVS codes. CyberSource maps\nthe standard AVS return codes for other types of payment cards, including American Express cards, to\nthe Visa standard AVS codes.\n\nAVS is considered either domestic or international, depending on the location of the bank that issued the\ncustomer's payment card:\n- When the bank is in the U.S., the AVS is domestic.\n- When the bank is outside the U.S., the AVS is international.\n\nYou should be prepared to handle both domestic and international AVS result codes:\n- For international cards, you can receive domestic AVS codes in addition to the international AVS codes.\n- For domestic cards, you can receive international AVS codes in addition to the domestic AVS codes.\n\n_International Visa Codes_: `B`, `C`, `D`, `G`, `I`, `M`, `P`\n\n_Domestic Visa Codes_: `A`, `E`,`N`, `R`, `S`, `U`, `W`, `X`, `Y`, `Z`\n\n#### CyberSource Codes\nThe numeric AVS codes are created by CyberSource\nand are not standard Visa codes. These AVS codes\ncan be returned for any card type.\n\n_CyberSource Codes_: `1`, `2`, `3`, `4`\n\n### Table of AVS Codes for All Other Processors\n\n|AVS Code|Description|\n|--- |--- |\n|A|Partial match: street address matches, but 5-digit and 9-digit postal codes do not match.|\n|B|Partial match: street address matches, but postal code is not verified. Returned only for Visa cards not issued in the U.S.|\n|C|No match: street address and postal code do not match. Returned only for Visa cards not issued in the U.S.|\n|D & M|Match: street address and postal code match. Returned only for Visa cards not issued in the U.S.|\n|E|Invalid: AVS data is invalid or AVS is not allowed for this card type.|\n|F|Partial match: card member\u2019s name does not match, but billing postal code matches.|\n|G|Not supported: issuing bank outside the U.S. does not support AVS.|\n|H|Partial match: card member\u2019s name does not match, but street address and postal code match. Returned only for the American Express card type.|\n|I|No match: address not verified. Returned only for Visa cards not issued in the U.S.|\n|K|Partial match: card member\u2019s name matches, but billing address and billing postal code do not match. Returned only for the American Express card type.|\n|L|Partial match: card member\u2019s name and billing postal code match, but billing address does not match. Returned only for the American Express card type.|\n|M|See the entry for D & M.|\n|N|No match: one of the following: street address and postal code do not match _or_ (American Express card type only) card member\u2019s name, street address, and postal code do not match.|\n|O|Partial match: card member\u2019s name and billing address match, but billing postal code does not match. Returned only for the American Express card type.|\n|P|Partial match: postal code matches, but street address not verified. Returned only for Visa cards not issued in the U.S.|\n|R|System unavailable.|\n|S|Not supported: issuing bank in the U.S. does not support AVS.|\n|T|Partial match: card member\u2019s name does not match, but street address matches. Returned only for the American Express card type.|\n|U|System unavailable: address information unavailable for one of these reasons: The U.S. bank does not support AVS outside the U.S. _or_ The AVS in a U.S. bank is not functioning properly.|\n|V|Match: card member\u2019s name, billing address, and billing postal code match. Returned only for the American Express card type.|\n|W|Partial match: street address does not match, but 9-digit postal code matches.|\n|X|Match: street address and 9-digit postal code match.|\n|Y|Match: street address and 5-digit postal code match.|\n|Z|Partial match: street address does not match, but 5-digit postal code matches.|\n|1|Not supported: one of the following: AVS is not supported for this processor or card type _or_ AVS is disabled for your CyberSource account. To enable AVS, contact CyberSource Customer Support.|\n|2|Unrecognized: the processor returned an unrecognized value for the AVS response.|\n|3|Match: address is confirmed. Returned only for PayPal Express Checkout.|\n|4|No match: address is not confirmed. Returned only for PayPal Express Checkout.|\n|5|No match: no AVS code was returned by the processor.|\n", + "items": { + "type": "string" + } + }, + "ignoreCvResult": { + "type": "boolean", + "description": "Flag for a sale request that indicates whether to allow the capture service to run even when the authorization receives a CVN decline, as indicated by an `processorInformation.cardVerification.resultCode` value of `D` or `N`.\nPossible values:\n- `true`: Ignore the results of CVN checking and run the capture service.\n- `false` (default): If the authorization receives a CVN decline, do not run the capture service.\n\n#### Used by\n**Authorization**\nOptional field.\n", + "default": false + }, + "initiator": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction.\n\nValid values:\n- **customer**\n- **merchant**\n" + }, + "credentialStoredOnFile": { + "type": "boolean", + "description": "Indicates to the issuing bank two things:\n- The merchant has received consent from the cardholder to store their card details on file\n- The merchant wants the issuing bank to check out the card details before the merchant initiates their first transaction for this cardholder.\nThe purpose of the merchant-initiated transaction is to ensure that the cardholder\u2019s credentials are valid (that the card is not stolen or has restrictions) and that the card details are good to be stored on the merchant\u2019s file for future transactions.\n\nValid values:\n- `true` means merchant will use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n- `false` means merchant will not use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n\nFor details, see `subsequent_auth_first` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**NOTE:** The value for this field does not correspond to any data in the TC 33 capture file5.\n\nThis field is supported only for Visa transactions on CyberSource through VisaNet.\n" + }, + "storedCredentialUsed": { + "type": "boolean", + "description": "Indicates to an issuing bank whether a merchant-initiated transaction came from a card that was already stored on file.\n\nPossible values:\n- **true** means the merchant-initiated transaction came from a card that was already stored on file.\n- **false** means the merchant-initiated transaction came from a card that was not stored on file.\n" + }, + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "maxLength": 1, + "description": "Reason for the merchant-initiated transaction or incremental authorization. Possible values:\n- `1`: Resubmission\n- `2`: Delayed charge\n- `3`: Reauthorization for split shipment\n- `4`: No show\n- `5`: Account top up\nThis field is required only for the five kinds of transactions in the preceding list.\nThis field is supported only for merchant-initiated transactions and incremental authorizations.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR0\n- Position: 160-163\n- Field: Message Reason Code\n\n#### All Processors\nFor details, see `subsequent_auth_reason` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n\nIf the current payment request includes a token instead of an account number, the following time limits apply for the value of this field:\n- For a **resubmission**, the transaction ID must be less than 14 days old.\n- For a **delayed charge** or **reauthorization**, the transaction ID must be less than 30 days old.\n\n**NOTE**: The value for this field does not correspond to any data in the TC 33 capture file5. This field is supported\nonly for Visa transactions on CyberSource through VisaNet.\n" + }, + "originalAuthorizedAmount": { + "type": "string", + "maxLength": 61, + "description": "Amount of the original authorization.\n\nThis field is supported only for Apple Pay, Google Pay, and Samsung Pay transactions with Discover on FDC Nashville Global and Chase Paymentech.\n\nSee \"Recurring Payments,\" and \"Subsequent Authorizations,\" field description in the [Payment Network Tokenization\nUsing the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/tokenization_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + } + }, + "billPayment": { + "type": "boolean", + "description": "Indicates payment for bill or payment towards existing contractual loan.\n\nPossible values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n\nOptional request field.\n" + }, + "billPaymentType": { + "type": "string", + "description": "Reason for the payment.\n\nPossible values:\n- 001: Utility payment\n- 002: Government services\n- 003: Mobile phone top-up\n- 004: Coupon payment\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR0\n- Position: 48-50\n- Field: Bill Payment Transaction Type Identifier\n\nThis field is supported only for bill payments in Brazil with Mastercard on CyberSource through VisaNet.\n" + }, + "redemptionInquiry": { + "type": "boolean", + "description": "Flag that indicates the payment request is a redemption inquiry.\n\nPossible values:\n - `true`\n - `false`\n" + }, + "transportationMode": { + "type": "string", + "description": "Type of transportation mode :\n\nPossible Values:\n- 00 = Unknown\n- 01 = Urban bus\n- 02 = Interurban bus\n- 03=Lighttrainmasstransit(Underground Metro LTR)\n- 04 = Train\n- 05 = Commuter train\n- 06 = Water-borne vehicle\n- 07 = Toll\n- 08 = Parking\n- 09 = Taxi\n- 10 = High-speed train\n- 11 = Rural bus\n- 12 = Express commuter train\n- 13 = Para transit\n- 14 = Self drive vehicle\n- 15 = Coach\n- 16 = Locomotive\n- 17 = Powered motor coach\n- 18 = Trailer\n- 19 = Regional train\n- 20 = Inter-city\n- 21 = Funicular train\n- 22 = Cable car\n" + }, + "aggregatedAuthIndicator": { + "type": "string", + "description": "Indicates if transaction is an aggregated auth\n\nPossible values:\n- **true**\n- **false**\n" + }, + "debtRecoveryIndicator": { + "type": "string", + "description": "Indicates if transaction is a debt recovery request\n\nPossible values:\n- **true**\n- **false**\n" + }, + "deferredAuthIndicator": { + "type": "boolean", + "description": "Flag that indicates whether the authorization request was delayed because connectivity was interrupted.\n\nPossible values:\n - `true` (Deferred authorization)\n - `false` (default: Not a deferred authorization)\n" + }, + "cashAdvanceIndicator": { + "type": "boolean", + "description": "This API field enables the merchant to indicate that a given transaction is Cash Advance.\n\nCash advance or Cash disbursement functionality allows a merchant to dispense cash at a point of sale.\nIt provides the ability of a POS system to act like an ATM. These terminals are typically seen in bank\nbranches where customers can use their card and withdraw cash or at merchant locations where ATMs are sparse.\n\nPossible values:\n - `true` (Cash advance is supported)\n - `false` (default: cash advance is not supported)\n" + } + } + }, + "captureOptions": { + "type": "object", + "properties": { + "captureSequenceNumber": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Capture number when requesting multiple partial captures for one authorization.\nUsed along with `totalCaptureCount` to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber_ = 2`, and\n - `totalCaptureCount = 5`\n" + }, + "totalCaptureCount": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Total number of captures when requesting multiple partial captures for one payment.\nUsed along with `captureSequenceNumber` field to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber = 2`, and\n - `totalCaptureCount = 5`\n" + }, + "dateToCapture": { + "type": "string", + "maxLength": 4, + "description": "Date on which you want the capture to occur. This field is supported only for CyberSource through VisaNet.\nFormat: `MMDD`\n\n#### Used by\n**Authorization**\nOptional field.\n" + } + } + }, + "recurringOptions": { + "type": "object", + "properties": { + "loanPayment": { + "type": "boolean", + "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", + "default": false + }, + "firstRecurringPayment": { + "type": "boolean", + "description": "Flag that indicates whether this transaction is the first in a series of recurring payments.\n\nThis field is supported only for **Atos**, **FDC Nashville Global**, and **OmniPay Direct**.\n\nPossible values:\n - `true` Indicates this is the first payment in a series of recurring payments\n - `false` (default) Indicates this is not the first payment in a series of recurring payments.\n\nFor details, see `auth_first_recurring_payment` field description and \"Recurring Payments\" in\n[Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", + "default": false + } + } + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "declineAvsFlags": { + "type": "string", + "maxLength": 15, + "description": "Space-separated list of AVS flags that cause the request to be declined for AVS reasons.\n\n**Important** To receive declines for the AVS code `N`, you must include the value `N` in the space-separated list.\n\n### AVS Codes for Cielo 3.0 and CyberSource Latin American Processing\n\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this section is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n|AVS Code|Description|\n|--- |--- |\n|D|Partial match: postal code and address match.|\n|E|Not supported: AVS is not supported for this card type. _or_ Invalid: the acquirer returned an unrecognized value for the AVS response.|\n|F|Partial match: postal code matches, but CPF and address do not match.*|\n|G|Not supported: AVS not supported or not verified.|\n|I|No match: AVS information is not available.|\n|K|Partial match: CPF matches, but postal code and address do not match.*|\n|L|Partial match: postal code and CPF match, but address does not match.*|\n|N|No match: postal code, CPF, and address do not match.*|\n|O|Partial match: CPF and address match, but postal code does not match.*|\n|R|Not supported: your implementation does not support AVS _or_ System unavailable.|\n|T|Partial match: address matches, but postal code and CPF do not match.*|\n|V|Match: postal code, CPF, and address match.*|\n|* CPF (Cadastro de Pessoas Fisicas) is required only for Redecard in Brazil.||\n\n### AVS Codes for All Other Processors\n\n**Note** The list of AVS codes for all other processors follows these descriptions of the processor-specific information for these codes.\n\n#### American Express Cards\nFor American Express cards only, you can receive Visa and CyberSource AVS codes in addition to the American Express AVS codes.\n\n**Note** For CyberSource through VisaNet, the American Express AVS codes are converted to Visa AVS codes before they are returned to you. As a result, you will not receive American Express AVS codes for the American Express card type.\n\n_American Express Card codes_: `F`, `H`, `K`, `L`, `O`, `T`, `V`\n\n#### Domestic and International Visa Cards\nThe international and domestic alphabetic AVS codes are the Visa standard AVS codes. CyberSource maps the standard AVS return codes for other types of payment cards, including American Express cards, to the Visa standard AVS codes.\n\nAVS is considered either domestic or international, depending on the location of the bank that issued the customer\u2019s payment card:\n- When the bank is in the U.S., the AVS is domestic.\n- When the bank is outside the U.S., the AVS is international.\n\nYou should be prepared to handle both domestic and international AVS result codes:\n- For international cards, you can receive domestic AVS codes in addition to the international AVS codes.\n- For domestic cards, you can receive international AVS codes in addition to the domestic AVS codes.\n\n_International Visa Codes_: `B`, `C`, `D`, `G`, `I`, `M`, `P`\n\n_Domestic Visa Codes_: `A`, `E`,`N`, `R`, `S`, `U`, `W`, `X`, `Y`, `Z`\n\n#### CyberSource Codes\nThe numeric AVS codes are created by CyberSource and are not standard Visa codes. These AVS codes can be returned for any card type.\n\n_CyberSource Codes_: `1`, `2`, `3`, `4`\n\n### Table of AVS Codes for All Other Processors\n\n|AVS Code|Description|\n|--- |--- |\n|A|Partial match: street address matches, but 5-digit and 9-digit postal codes do not match.|\n|B|Partial match: street address matches, but postal code is not verified. Returned only for Visa cards not issued in the U.S.|\n|C|No match: street address and postal code do not match. Returned only for Visa cards not issued in the U.S.|\n|D & M|Match: street address and postal code match. Returned only for Visa cards not issued in the U.S.|\n|E|Invalid: AVS data is invalid or AVS is not allowed for this card type.|\n|F|Partial match: card member\u2019s name does not match, but billing postal code matches.|\n|G|Not supported: issuing bank outside the U.S. does not support AVS.|\n|H|Partial match: card member\u2019s name does not match, but street address and postal code match. Returned only for the American Express card type.|\n|I|No match: address not verified. Returned only for Visa cards not issued in the U.S.|\n|K|Partial match: card member\u2019s name matches, but billing address and billing postal code do not match. Returned only for the American Express card type.|\n|L|Partial match: card member\u2019s name and billing postal code match, but billing address does not match. Returned only for the American Express card type.|\n|M|See the entry for D & M.|\n|N|No match: one of the following: street address and postal code do not match _or_ (American Express card type only) card member\u2019s name, street address, and postal code do not match.|\n|O|Partial match: card member\u2019s name and billing address match, but billing postal code does not match. Returned only for the American Express card type.|\n|P|Partial match: postal code matches, but street address not verified. Returned only for Visa cards not issued in the U.S.|\n|R|System unavailable.|\n|S|Not supported: issuing bank in the U.S. does not support AVS.|\n|T|Partial match: card member\u2019s name does not match, but street address matches. Returned only for the American Express card type.|\n|U|System unavailable: address information unavailable for one of these reasons: The U.S. bank does not support AVS outside the U.S. _or_ The AVS in a U.S. bank is not functioning properly.|\n|V|Match: card member\u2019s name, billing address, and billing postal code match. Returned only for the American Express card type.|\n|W|Partial match: street address does not match, but 9-digit postal code matches.|\n|X|Match: street address and 9-digit postal code match.|\n|Y|Match: street address and 5-digit postal code match.|\n|Z|Partial match: street address does not match, but 5-digit postal code matches.|\n|1|Not supported: one of the following: AVS is not supported for this processor or card type _or_ AVS is disabled for your CyberSource account. To enable AVS, contact CyberSource Customer Support.|\n|2|Unrecognized: the processor returned an unrecognized value for the AVS response.|\n|3|Match: address is confirmed. Returned only for PayPal Express Checkout.|\n|4|No match: address is not confirmed. Returned only for PayPal Express Checkout.|\n|5|No match: no AVS code was returned by the processor.|\n" + }, + "secCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nAccepts only the following values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "terminalCity": { + "type": "string", + "maxLength": 4, + "description": "City in which the terminal is located. If more than four alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" + }, + "terminalState": { + "type": "string", + "maxLength": 2, + "description": "State in which the terminal is located. If more than two alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" + }, + "effectiveDate": { + "type": "string", + "maxLength": 8, + "description": "Effective date for the transaction. The effective date must be within 45 days of the current day. If you do not\ninclude this value, CyberSource sets the effective date to the next business day.\n\nFormat: `MMDDYYYY`\n\nSupported only for the CyberSource ACH Service.\n" + }, + "partialPaymentId": { + "type": "string", + "maxLength": 25, + "description": "Identifier for a partial payment or partial credit.\n\nThe value for each debit request or credit request must be unique within the scope of the order.\nFor details, see `partial_payment_id` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "customerMemo": { + "type": "string", + "maxLength": 80, + "description": "Payment related information.\n\nThis information is included on the customer\u2019s statement.\n" + }, + "paymentCategoryCode": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether to process the payment.\n\nUse with deferred payments.\nFor details, see `ecp_payment_mode` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n\nPossible values:\n- `0`: Standard debit with immediate payment (default).\n- `1`: For deferred payments, indicates that this is a deferred payment and that you will send a debit request\nwith `paymentCategoryCode = 2` in the future.\n- `2`: For deferred payments, indicates notification to initiate payment.\n\n#### Chase Paymentech Solutions and TeleCheck\nUse for deferred and partial payments.\n\n#### CyberSource ACH Service\nNot used.\n\n#### RBS WorldPay Atlanta\nNot used.\n" + }, + "settlementMethod": { + "type": "string", + "maxLength": 1, + "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "fraudScreeningLevel": { + "type": "string", + "maxLength": 1, + "description": "Level of fraud screening.\n\nPossible values:\n- `1`: Validation \u2014 default if the field has not already been configured for your merchant ID\n- `2`: Verification\n\nFor a description of this feature and a list of supported processors, see \"Verification and Validation\" in the [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + }, + "customerPresent": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a customer is physically present and whether the customer is enrolling in CyberSource Recurring Billing.\n\nPossible values:\n- `1`: Customer is present and not enrolling.\n- `2`: Customer is not present and not enrolling.\n- `3`: Customer is present and enrolling.\n- `4`: Customer is not present and enrolling.\n" + } + } + }, + "purchaseOptions": { + "type": "object", + "properties": { + "isElectronicBenefitsTransfer": { + "type": "boolean", + "description": "Flag that indicates whether this transaction is an EBT transaction. Possible values:\n- `true`\n- `false`\n\n#### PIN debit\nRequired field for EBT and EBT voucher transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" + }, + "type": { + "type": "string", + "maxLength": 6, + "description": "Flag that indicates an EBT voucher transaction. Possible value:\n- `EBT_VOUCHER`: Indicates the PIN debit transaction is an EBT voucher.\n\n#### PIN debit\nRequired field for EBT voucher transactions that use PIN debit purchase; otherwise, not used.\n" + } + } + }, + "electronicBenefitsTransfer": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 4, + "description": "Flag that specifies the category for the EBT transaction.\n\nPossible values:\n- `CASH`: Cash benefits, which can be used to purchase any item at a participating retailer, as well as to obtain cash-back or make a cash withdrawal from a participating ATM.\n- `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program.\n\n#### PIN debit\nRequired field for EBT transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" + }, + "voucherSerialNumber": { + "type": "string", + "maxLength": 15, + "description": "The serial number printed on the EBT voucher.\n\n#### PIN debit\nRequired field for EBT voucher transactions that use PIN debit purchase; otherwise, not used.\n" + } + } + }, + "loanOptions": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 20, + "description": "Type of loan based on an agreement between you and the issuer.\nExamples: AGROCUSTEIO, AGRO-INVEST, BNDES-Type1, CBN, FINAME.\nThis field is supported only for these kinds of payments:\n- BNDES transactions on CyberSource through VisaNet.\n- Installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nSee \"\"Installment Payments on CyberSource through VisaNet,\"\" in the SCMP/SO guide\n\nFor BNDES transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR2, Position: 27-46, Field: Loan Type\n\nFor installment payments with Mastercard in Brazil, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR4, Position: 5-24,Field: Financing Type\n" + }, + "assetType": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a loan is for a recoverable item or a non-recoverable item.\nPossible values:\n- `N`: non-recoverable item\n- `R`: recoverable item\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n Record: CP07 TCR2, Position: 26, Field: Asset Indicator\n" + } + } + }, + "walletType": { + "type": "string", + "maxLength": 5, + "description": "This field carries the wallet type in authorization requests and credit requests. Possible value are:\n- `101`: Masterpass remote payment. The customer created the wallet by manually interacting with a customer-controlled device such as a computer, tablet, or phone. This value is supported only for Masterpass transactions on Chase Paymentech Solutions and CyberSource through VisaNet.\n- `102`: Masterpass remote near field communication (NFC) payment. The customer created the wallet by tapping a PayPass card or customer-controlled device at a contactless card reader. This value is supported only for card-present Masterpass transactions on CyberSource through VisaNet.\n- `103`: Masterpass Apple Pay payment. The payment was made with a combination of Masterpass and Apple Pay. This value is supported only for Masterpass Apple Pay transactions on CyberSource through VisaNet.\n- `216`: Masterpass Google Pay payment. The payment was made with a combination of Masterpass and Google Pay. This value is supported only for Masterpass Google Pay transactions on CyberSource through VisaNet.\n- `217`: Masterpass Samsung Pay payment. The payment was made with a combination of Masterpass and Samsung Pay. This value is supported only for Masterpass Samsung Pay transactions on CyberSource through VisaNet.\n- `SDW`: Staged digital wallet. An issuer or operator created the wallet. This value is supported only for Masterpass transactions on Chase Paymentech Solutions.\n- `VCIND`: Visa Checkout payment. This value is supported only on CyberSource through VisaNet, FDC Compass, FDC Nashville Global, FDI Australia, and TSYS Acquiring Solutions. See Getting Started with Visa Checkout. For Visa Checkout transactions, the way CyberSource processes the value for this field depends on the processor. See the Visa Checkout section below.\nFor all other values, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nMasterpass (101, 102, 103, 216, and 217): The Masterpass platform generates the wallet type value and passes it to you along with the customer\u2019s checkout information.\n\nVisa Checkout:\nThis field is optional for Visa Checkout authorizations on FDI Australia. For all other processors, this field is required for Visa Checkout authorizations.\nFor Visa Checkout transactions on the following processors, CyberSource sends the value that the processor expects for this field:FDC Compass,FDC Nashville Global,FDI Australia,TSYS Acquiring\nSolutions For all other processors, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nFor incremental authorizations, this field is supported only for Mastercard and the supported values are 101 and 102.\nPayment card companies can introduce new values without notice. Your order management system should be able to process new values without problems.\n\nCyberSource through VisaNet\nWhen the value for this field is 101, 102, 103, 216, or 217, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR6, Position: 88-90, Field: Mastercard Wallet Identifier.\nWhen the value for this field is VCIND, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR8, Position: 72-76, Field: Agent Unique ID.\n" + }, + "nationalNetDomesticData": { + "type": "string", + "maxLength": 123, + "description": "Supplementary domestic transaction information provided by the acquirer for National Net Settlement Service (NNSS) transactions. NNSS is a settlement service that Visa provides.\nFor transactions on CyberSource through VisaNet in countries that subscribe to NNSS:\nVisaNet clears transactions; VisaNet transfers funds to the acquirer after deducting processing fees and interchange fees.\nVisaNet settles transactions in the local pricing currency through a local financial institution.\nThis field is supported only on CyberSource through VisaNet for domestic data in Colombia\n" + }, + "japanPaymentOptions": { + "type": "object", + "properties": { + "paymentMethod": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" + }, + "bonuses": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6.\n" + }, + "bonusMonth": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12.\n" + }, + "secondBonusMonth": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12.\n" + }, + "bonusAmount": { + "type": "string", + "maxLength": 8, + "description": "This value contains the bonus amount of the first month. Maximum value without decimal 99999999.\n" + }, + "secondBonusAmount": { + "type": "string", + "maxLength": 8, + "description": "This value contains the bonus amount of the second month. Maximum value without decimal 99999999.\n" + }, + "preapprovalType": { + "type": "string", + "maxLength": 1, + "description": "This will contain the details of the kind of transaction that has been processe. Used only for Japan.\nPossible Values:\n- 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft)\n- 1 = Negative card authorization (authorization-only with 0 or 1 amount)\n- 2 = Reservation of authorization (authorization-only with amount)\n- 3 = Cancel transaction\n- 4 = Merchant-initiated reversal/refund transactions\n- 5 = Cancel reservation of authorization\n- 6 = Post authorization\n" + }, + "installments": { + "type": "string", + "maximum": 99, + "description": "Number of Installments.\n" + }, + "terminalId": { + "type": "string", + "maxLength": 13, + "description": "Unique Japan Credit Card Association (JCCA) terminal identifier.\n\nThe difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define\n`pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is\ndefined by the JCCA and is used only in Japan.\n\nThis field is supported only on CyberSource through VisaNet and JCN Gateway.\n\nOptional field.\n" + }, + "firstBillingMonth": { + "type": "string", + "maxLength": 2, + "description": "Billing month in MM format.\n" + }, + "businessName": { + "type": "string", + "maxLength": 25, + "description": "Business name in Japanese characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "businessNameKatakana": { + "type": "string", + "maxLength": 25, + "description": "Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "jis2TrackData": { + "type": "string", + "maxLength": 69, + "description": "Japanese Industrial Standard Type 2 (JIS2) track data from the front of the card.\n\nThis field is supported only on CyberSource through VisaNet and JCN Gateway.\n\nOptional field.\n" + }, + "businessNameAlphaNumeric": { + "type": "string", + "maxLength": 25, + "description": "Business name in alphanumeric characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + } + } + }, + "mobileRemotePaymentType": { + "type": "string", + "maxLength": 1, + "description": "Type of payment initiated from a cardholder's mobile device. Possible values:\n- `1` : Consumer-initiated remote purchase, face-to-face\n- `2` : Consumer-initiated remote purchase, e-commerce\n- `3` : Consumer-initiated remote purchase, mail order / telephone order\n- `4` : Consumer-initiated bill pay\n- `5` : Consumer-initiated top up\n- `6` : Consumer-initiated cash out\n- `7` : ATM triggered or agent-initiated cash out\n- `8` : Merchant-initiated remote purchase, face-to-face\n- `9` : Merchant-initiated remote purchase, e-commerce\n\nThis field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nOptional field.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the\nTC 33 capture file:\n- Record: CP01 TCR6\n- Position: 94\n- Field: Mastercard Mobile Remote Payment Program Indicator\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the\nmerchant\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n" + }, + "extendedCreditTotalCount": { + "type": "string", + "maxLength": 1, + "description": "A private national-use field submitted by acquirers and issuers in South Africa for South Africa-domestic (intra-country) authorizations and financial requests.\nValues for this field are 00 through 99.\n" + }, + "networkRoutingOrder": { + "type": "string", + "maxLength": 30, + "description": "On PIN Debit Gateways: This U.S.-only field is optionally used by participants (merchants and acquirers) to specify the network access priority.\nVisaNet checks to determine if there are issuer routing preferences for any of the networks specified by the sharing group code.\nIf an issuer preference exists for one of the specified debit networks, VisaNet makes a routing selection based on the issuer\u2019s preference.\nIf an issuer preference exists for more than one of the specified debit networks, or if no issuer preference exists,\nVisaNet makes a selection based on the acquirer\u2019s routing priorities.\n\n#### PIN debit\nPriority order of the networks through which he transaction will be routed. Set this value to a series of one-character network codes in your preferred order. This is a list of the network codes:\n\n| Network | Code |\n| --- | --- |\n| Accel | E |\n| AFFN | U |\n| Alaska Option | 3 |\n| CU24 | C |\n| Interlink | G |\n| Maestro | 8 |\n| NETS | P |\n| NYCE | F |\n| Pulse | H |\n| Shazam | 7 |\n| Star | M |\n| Visa | V |\n\nFor example, if the Star network is your first preference and Pulse is your second preference, set this field to a value of `MH`.\n\nWhen you do not include this value in your PIN debit request, the list of network codes from your account is used.\n**Note** This field is supported only for businesses located in the U.S.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "payByPointsIndicator": { + "type": "boolean", + "description": "Flag that indicates if the transaction is pay by points transaction\ntrue: Transaction uses loyalty points\nfalse: Transaction does not use loyalty points\nDefault: false\n" + }, + "isReturnAuthRecordEnabled": { + "type": "boolean", + "description": "Flag that indicates the functionality we are having for merchants for which auth is done through Cybersource but\nsettlement is done by themselves.\ntrue: functionality is supported. Processor should send raw processor auth response to Merchant.\nfalse: functionality is not supported.\nDefault: false\n" + } + } + }, + "issuerInformation": { + "type": "object", + "properties": { + "discretionaryData": { + "type": "string", + "maxLength": 255, + "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "useAs": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nPossible values:\n\n - C: Credit transaction\n - D: Debit transaction\n\nThis field is supported only for all card Types on Visa Platform Connect.\n\nThis field is required for:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n\n**Note** The value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR0\n- Position: 51\n- Field: Combination Card Transaction Identifier\n" + }, + "sourceAccountType": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" + }, + "sourceAccountTypeDetails": { + "type": "string", + "maxLength": 4, + "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n\n#### FDMS Nashville\nRequired for American Express or if swiped; otherwise, optional.\n\n#### Ingenico ePayments\nDo not include this field when `commerceIndicator=recurring`.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\n#### TSYS Acquiring Solutions\nOptional if pointOfSaleInformation.entryMode=keyed; otherwise, not used.\n\n#### GPX\nOptional.\n\n#### All other processors:\nOptional.\n" + }, + "securityCodeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" + }, + "accountEncoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 5, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "productName": { + "type": "string", + "maxLength": 15, + "description": "Name of the card product.\n\nPossible value:\n- BNDES\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 115-120\n- Field: Brazil Country Data\n" + }, + "typeSelectionIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag that identifies how the card type was selected.\n\nPossible values:\n- 0: Card type was selected based on default acquirer settings.\n- 1: Customer selected the card type.\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "cryptogram": { + "type": "string", + "maxLength": 255, + "description": "This field contains token information." + }, + "requestorId": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "assuranceLevel": { + "type": "string", + "maxLength": 2, + "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" + }, + "storageMethod": { + "type": "string", + "maxLength": 3, + "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "securityCodeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" + } + } + }, + "fluidData": { + "type": "object", + "properties": { + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 12, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "legacyToken": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 16, + "maxLength": 22 + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 1, + "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" + }, + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "encoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "checkNumber": { + "type": "string", + "maxLength": 8, + "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" + }, + "checkImageReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Image reference number associated with the check. You cannot include any special characters.\n" + } + } + }, + "routingNumber": { + "type": "string", + "maxLength": 9, + "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "iban": { + "type": "string", + "maxLength": 50, + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "swiftCode": { + "type": "string", + "description": "Bank\u2019s SWIFT code. You can use this field only when scoring a direct debit transaction.\nRequired only for crossborder transactions.\n\nFor all possible values, see the `bank_swiftcode` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + }, + "initiationChannel": { + "type": "string", + "maxLength": 2, + "description": "Mastercard-defined code that indicates how the account information was obtained.\n\n- `00` (default): Card\n- `01`: Removable secure element that is personalized for use with a mobile phone and controlled by the wireless service provider; examples: subscriber identity module (SIM), universal integrated circuit card (UICC)\n- `02`: Key fob\n- `03`: Watch\n- `04`: Mobile tag\n- `05`: Wristband\n- `06`: Mobile phone case or sleeve\n- `07`: Mobile phone with a non-removable, secure element that is controlled by the wireless service provider; for example, code division multiple access (CDMA)\n- `08`: Removable secure element that is personalized for use with a mobile phone and not controlled by the wireless service provider; example: memory card\n- `09`: Mobile phone with a non-removable, secure element that is not controlled by the wireless service provider\n- `10`: Removable secure element that is personalized for use with a tablet or e-book and is controlled by the wireless service provider; examples: subscriber identity module (SIM), universal integrated circuit card (UICC)\n- `11`: Tablet or e-book with a non-removable, secure element that is controlled by the wireless service provider\n- `12`: Removable secure element that is personalized for use with a tablet or e-book and is not controlled by the wireless service provider\n- `13`: Tablet or e-book with a non-removable, secure element that is not controlled by the wireless service provider\n\nThis field is supported only for Mastercard on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional field.\n" + }, + "eWallet": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "maxLength": 26, + "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" + }, + "subTotalAmount": { + "type": "string", + "maxLength": 15, + "description": "Subtotal amount of all the items.This amount (which is the value of all items in the cart, not including the additional amounts such as tax, shipping, etc.) cannot change after a sessions request.\nWhen there is a change to any of the additional amounts, this field should be resent in the order request. When the sub total amount changes, you must initiate a new transaction starting with a sessions request.\nNote The amount value must be a non-negative number containing 2 decimal places and limited to 7 digits before the decimal point. This value can not be changed after a sessions request.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n" + }, + "nationalTaxIncluded": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" + }, + "taxAppliedLevel": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 3, + "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" + }, + "freightAmount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "foreignAmount": { + "type": "string", + "maxLength": 15, + "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "description": "Set this field to the converted amount that was returned by the DCC provider.\n" + }, + "exchangeRate": { + "type": "string", + "maxLength": 13, + "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" + }, + "exchangeRateTimeStamp": { + "type": "string", + "maxLength": 14, + "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" + }, + "surcharge": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 15, + "description": "The surcharge amount is included in the total transaction amount but is passed in a separate field to the issuer and acquirer for tracking. The issuer can provide information about the surcharge amount to the customer.\n\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n\n**NOTE**: This field is supported only for CyberSource through VisaNet (CtV) for Payouts. For CtV, the maximum string length is 8.\n\n#### PIN debit\nSurcharge amount that you are charging the customer for this transaction. If you include a surcharge amount\nin the request, you must also include the surcharge amount in the value for `orderInformation.amountDetails.totalAmount`.\n\nOptional field for transactions that use PIN debit credit or PIN debit purchase.\n" + }, + "description": { + "type": "string", + "description": "Merchant-defined field for describing the surcharge amount." + } + } + }, + "settlementAmount": { + "type": "string", + "maxLength": 12, + "description": "This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder\u2019s account.\nThis field is returned for OCT transactions.\n" + }, + "settlementCurrency": { + "type": "string", + "maxLength": 3, + "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder's account.\nThis field is returned for OCT transactions.\n" + }, + "amexAdditionalAmounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "amount": { + "type": "string", + "maxLength": 12, + "description": "Additional amount. This field is supported only for **American Express Direct**.\n" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + }, + "originalAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount in your original local pricing currency.\n\nThis value cannot be negative. You can include a decimal point (.) in this field to denote the currency\nexponent, but you cannot include any other special characters.\n\nIf needed, CyberSource truncates the amount to the correct number of decimal places.\n" + }, + "originalCurrency": { + "type": "string", + "maxLength": 15, + "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" + }, + "currencyConversion": { + "type": "object", + "properties": { + "indicator": { + "type": "string", + "maxLength": 1, + "description": "Flag indicating that DCC Lookup has been performed before this transaction. Set this field to 1 when cardholders opts to use DCC on the transaction.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Unique identifier generated by the DCC provider.\n" + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "Value of the Cybersource request ID returned in a DCC Lookup transaction.\n" + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "middleName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s middle name.\n" + }, + "nameSuffix": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s name suffix.\n" + }, + "title": { + "type": "string", + "maxLength": 60, + "description": "Title.\n" + }, + "company": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "address1": { + "type": "string", + "maxLength": 40, + "description": "First line in the street address of the company purchasing the product." + }, + "address2": { + "type": "string", + "maxLength": 40, + "description": "Additional address information for the company purchasing the product." + }, + "locality": { + "type": "string", + "maxLength": 30, + "description": "City in the address of the company purchasing the product." + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + } + } + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "address3": { + "type": "string", + "maxLength": 60, + "description": "Additional address information (third line of the billing address)\n" + }, + "address4": { + "type": "string", + "maxLength": 60, + "description": "Additional address information (fourth line of the billing address)\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "district": { + "type": "string", + "maxLength": 50, + "description": "Customer\u2019s neighborhood, community, or region (a barrio in Brazil) within the city or municipality. This\nfield is available only on **Cielo**.\n" + }, + "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" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "emailDomain": { + "type": "string", + "maxLength": 100, + "description": "Email domain of the customer. The domain of the email address comprises all characters that follow the @ symbol, such as mail.example.com. For the Risk Update service, if the email address and the domain are sent in the request, the domain supersedes the email address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneType": { + "type": "string", + "description": "Customer's phone number type.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nPossible Values:\n* day\n* home\n* night\n* work\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "The title of the person receiving the product.", + "maxLength": 10 + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "middleName": { + "type": "string", + "maxLength": 60, + "description": "Middle name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "district": { + "type": "string", + "maxLength": 50, + "description": "Neighborhood, community, or region within a city or municipality." + }, + "buildingNumber": { + "type": "string", + "maxLength": 15, + "description": "Building number in the street address. For example, the building number is 187 in the following address:\n\nRua da Quitanda 187\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nFor processor-specific information, see the company_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "destinationTypes": { + "type": "string", + "maxLength": 25, + "description": "Shipping destination of item. Example: Commercial, Residential, Store\n" + }, + "destinationCode": { + "type": "integer", + "maxLength": 2, + "description": "Indicates destination chosen for the transaction. Possible values:\n- 01- Ship to cardholder billing address\n- 02- Ship to another verified address on file with merchant\n- 03- Ship to address that is different than billing address\n- 04- Ship to store (store address should be populated on request)\n- 05- Digital goods\n- 06- Travel and event tickets, not shipped\n- 07- Other\n" + }, + "method": { + "type": "string", + "maxLength": 10, + "description": "Shipping method for the product. Possible values:\n- lowcost: Lowest-cost service\n- sameday: Courier or same-day service\n- oneday: Next-day or overnight service\n- twoday: Two-day service\n- threeday: Three-day service\n- pickup: Store pick-up\n- other: Other shipping method\n- none: No shipping method because product is a service or subscription\nRequired for American Express SafeKey (U.S.).\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "unitOfMeasure": { + "type": "string", + "maxLength": 12, + "description": "Unit of measure, or unit of measure code, for the item.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + }, + "taxRate": { + "type": "string", + "maxLength": 7, + "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" + }, + "taxStatusIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "amountIncludesTax": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "typeOfSupply": { + "type": "string", + "maxLength": 2, + "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 13, + "description": "Discount applied to the item." + }, + "discountApplied": { + "type": "boolean", + "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "discountRate": { + "type": "string", + "maxLength": 6, + "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 23, + "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "fulfillmentType": { + "type": "string", + "description": "Information about the product code used for the line item.\nPossible values:\n- `E`: The product code is `electronic_software`.\n- `P`: The product code is not `electronic_software`.\n\nFor details, see the `fulfillmentType` field description in [Business Center Reporting User Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/reporting_and_reconciliation/Reporting_User/html/)\n" + }, + "weight": { + "type": "string", + "maxLength": 9, + "description": "Weight of the item.\n\nFor details, see `weight_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "weightIdentifier": { + "type": "string", + "maxLength": 1, + "description": "Type of weight.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\n\nFor details, see `weight_identifier` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "weightUnit": { + "type": "string", + "maxLength": 2, + "description": "Code that specifies the unit of measurement for the weight amount. For example, `OZ` specifies ounce and `LB` specifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nFor details, see `weight_unit_measurement` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "referenceDataCode": { + "type": "string", + "maxLength": 2, + "description": "Code that identifies the value of the corresponding `orderInformation.lineItems[].referenceDataNumber` field.\n\nPossible values:\n- AN: Client-defined asset code\n- MG: Manufacturer's part number\n- PO: Purchase order number\n- SK: Supplier stock keeping unit number\n- UP: Universal product code\n- VC: Supplier catalog number\n- VP: Vendor part number\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n\nFor details, see `reference_data_#_code` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "referenceDataNumber": { + "type": "string", + "maxLength": 30, + "description": "Reference number.\n\nThe meaning of this value is identified by the value of the corresponding `referenceDataCode` field.\nSee Numbered Elements.\n\nThe maximum length for this field depends on the value of the corresponding `referenceDataCode` field:\n- When the code is `PO`, the maximum length for the reference number is 22.\n- When the code is `VC`, the maximum length for the reference number is 20.\n- For all other codes, the maximum length for the reference number is 30.\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" + }, + "productDescription": { + "type": "string", + "description": "Brief description of item." + }, + "giftCardCurrency": { + "type": "integer", + "maxLength": 3, + "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "shippingDestinationTypes": { + "type": "string", + "maxLength": 50, + "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" + }, + "gift": { + "type": "boolean", + "description": "This field is only used in DM service.\n\nDetermines whether to assign risk to the order if the billing and shipping addresses specify different cities,\nstates, or countries. This field can contain one of the following values:\n- true: Orders are assigned only slight additional risk if billing and shipping addresses are different.\n- false: Orders are assigned higher additional risk if billing and shipping addresses are different.\n" + }, + "passenger": { + "type": "object", + "description": "Contains travel-related passenger details used by DM service only.", + "properties": { + "type": { + "type": "string", + "maxLength": 32, + "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" + }, + "status": { + "type": "string", + "maxLength": 32, + "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" + }, + "phone": { + "type": "string", + "maxLength": 15, + "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's first name." + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's last name." + }, + "id": { + "type": "string", + "maxLength": 40, + "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." + }, + "nationality": { + "type": "string", + "maxLength": 2, + "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." + } + } + } + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "barcodeNumber": { + "type": "string", + "description": "Barcode Number." + }, + "expirationDate": { + "type": "string", + "description": "Expiration Date." + }, + "purchaseOrderNumber": { + "type": "string", + "maxLength": 25, + "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseContactName": { + "type": "string", + "maxLength": 36, + "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + }, + "vatInvoiceReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 4, + "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "merchandiseCode": { + "type": "integer", + "description": "Identifier for the merchandise. This field is supported only on the processors listed in this field description.\n\n#### American Express Direct\nPossible value:\n- 1000: Gift card\n\n#### CyberSource through VisaNet\nThis value must be right justified. In Japan, this value is called a _goods code_.\n\n#### JCN Gateway\nThis value must be right justified. In Japan, this value is called a _goods code_.\n" + }, + "transactionAdviceAddendum": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "maxLength": 40, + "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" + } + } + } + }, + "referenceDataCode": { + "type": "string", + "maxLength": 3, + "description": "Code that identifies the value of the `referenceDataNumber` field.\n\nFor the possible values, see \"Reference Data Codes\" in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/).\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" + }, + "referenceDataNumber": { + "type": "string", + "maxLength": 30, + "description": "Reference number. The meaning of this value is identified by the value of the `referenceDataCode` field.\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" + }, + "salesSlipNumber": { + "type": "integer", + "maximum": 99999, + "description": "Transaction identifier that is generated. You have the option of printing the sales slip number on the receipt.\nThis field is supported only on Cybersource through Visanet and JCN gateway.\n\nOptional field.\n\n#### Card Present processing message\nIf you included this field in the request, the returned value is the value that you sent in the request.\nIf you did not include this field in the request, the system generated this value for you.\n\nThe difference between this reply field and the `processorInformation.systemTraceAuditNumber` field is that the\nsystem generates the system trace audit number (STAN), and you must print the receipt number on the receipt;\nwhereas you can generate the sales slip number, and you can choose to print the sales slip number on the receipt.\n" + }, + "invoiceDate": { + "type": "string", + "maxLength": 8, + "description": "Date of the tax calculation. Use format YYYYMMDD. You can provide a date in the past if you are calculating tax for a refund and want to know what the tax was on the date the order was placed.\nYou can provide a date in the future if you are calculating the tax for a future date, such as an upcoming tax holiday.\n\nThe default is the date, in Pacific time, that the bank receives the request.\nKeep this in mind if you are in a different time zone and want the tax calculated with the rates that are applicable on a specific date.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "costCenter": { + "type": "string", + "maxLength": 25, + "description": "Cost centre of the merchant" + }, + "issuerMessage": { + "type": "string", + "maxLength": 41, + "description": "Text message from the issuer. If you give the customer a receipt, display this value on the receipt." + } + } + }, + "shippingDetails": { + "type": "object", + "description": "Contains shipping information not related to address.", + "properties": { + "giftWrap": { + "type": "boolean", + "description": "Boolean that indicates whether the customer requested gift wrapping for this\npurchase. This field can contain one of the following\nvalues:\n- true: The customer requested gift wrapping.\n- false: The customer did not request gift wrapping.\n" + }, + "shippingMethod": { + "type": "string", + "maxLength": 10, + "description": "Shipping method for the product. Possible values:\n\n - `lowcost`: Lowest-cost service\n - `sameday`: Courier or same-day service\n - `oneday`: Next-day or overnight service\n - `twoday`: Two-day service\n - `threeday`: Three-day service\n - `pickup`: Store pick-up\n - `other`: Other shipping method\n - `none`: No shipping method because product is a service or subscription\n" + }, + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" + } + } + }, + "returnsAccepted": { + "type": "boolean", + "description": "This is only needed when you are requesting both payment and DM service at same time.\n\nBoolean that indicates whether returns are accepted for this order.\nThis field can contain one of the following values:\n- true: Returns are accepted for this order.\n- false: Returns are not accepted for this order.\n" + }, + "isCryptocurrencyPurchase": { + "type": "string", + "description": "#### Visa Platform Connect :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nAdditional values to add :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nvalid values are\n- Y/y, true\n- N/n, false\n" + }, + "preOrder": { + "type": "string", + "description": "Indicates whether cardholder is placing an order with a future availability or release date.\nThis field can contain one of these values:\n- MERCHANDISE_AVAILABLE: Merchandise available\n- FUTURE_AVAILABILITY: Future availability\n" + }, + "preOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD\n" + }, + "reordered": { + "type": "boolean", + "description": "Indicates whether the cardholder is reordering previously purchased merchandise.\nThis field can contain one of these values:\n- false: First time ordered\n- true: Reordered\n" + }, + "totalOffersCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of articles/items in the order as a numeric decimal count.\nPossible values: 00 - 99\n" + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "dateOfBirth": { + "type": "string", + "maxLength": 8, + "description": "Recipient\u2019s date of birth. **Format**: `YYYYMMDD`.\n\nThis field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters\nbut otherwise does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "companyTaxId": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n\n** TeleCheck **\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n** All Other Processors **\nNot used.\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" + }, + "issuedBy": { + "type": "string", + "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "verificationResults": { + "type": "string", + "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" + } + } + } + }, + "hashedPassword": { + "type": "string", + "maxLength": 100, + "description": "The merchant's password that CyberSource hashes and stores as a hashed password.\n\nFor details about this field, see the `customer_password` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "gender": { + "type": "string", + "maxLength": 3, + "description": "Customer's gender. Possible values are F (female), M (male),O (other)." + }, + "language": { + "type": "string", + "maxLength": 2, + "description": "language setting of the user" + }, + "mobilePhone": { + "type": "integer", + "maxLength": 25, + "description": "Cardholder\u2019s mobile phone number.\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + } + } + }, + "recipientInformation": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "maxLength": 10, + "description": "Identifier for the recipient\u2019s account. Use the first six digits and last four digits of the recipient\u2019s account\nnumber. This field is a _pass-through_, which means that CyberSource does not verify the value or modify it in\nany way before sending it to the processor. If the field is not required for the transaction, CyberSource does\nnot forward it to the processor.\n\nFor details, see the `recipient_account_id` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "lastName": { + "type": "string", + "maxLength": 6, + "description": "Recipient\u2019s last name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n\nFor details, see the `recipient_lastname` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "middleName": { + "type": "string", + "maxLength": 35, + "description": "Recipient\u2019s middle name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n\nFor details, see the `recipient_middlename` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "postalCode": { + "type": "string", + "maxLength": 6, + "description": "Partial postal code for the recipient\u2019s address. For example, if the postal code is **NN5 7SG**, the value for\nthis field should be the first part of the postal code: **NN5**. This field is a _pass-through_, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor details, see the `recipient_postal_code` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "userAgent": { + "type": "string", + "maxLength": 40, + "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" + }, + "fingerprintSessionId": { + "type": "string", + "description": "Field that contains the session ID that you send to Decision Manager to obtain the device fingerprint\ninformation. The string can contain uppercase and lowercase letters, digits, hyphen (-), and\nunderscore (_). However, do not use the same uppercase and lowercase letters to indicate\ndifferent session IDs.\n\nThe session ID must be unique for each merchant ID. You can use any string that you are already\ngenerating, such as an order number or web session ID.\n\nThe session ID must be unique for each page load, regardless of an individual\u2019s web session ID.\nIf a user navigates to a profiled page and is assigned a web session, navigates away from the\nprofiled page, then navigates back to the profiled page, the generated session ID should be different\nand unique. You may use a web session ID, but it is preferable to use an application GUID (Globally\nUnique Identifier). This measure ensures that a unique ID is generated every time the page is\nloaded, even if it is the same user reloading the page.\n" + }, + "useRawFingerprintSessionId": { + "type": "boolean", + "description": "Boolean that indicates whether request contains the device fingerprint information.\nValues:\n- `true`: Use raw fingerprintSessionId when looking up device details.\n- `false` (default): Use merchant id + fingerprintSessionId as the session id for Device detail collection.\n" + }, + "deviceType": { + "type": "string", + "maxLength": 60, + "description": "The device type at the client side." + }, + "rawData": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "description": "Field that contains the device fingerprint data from the specified provider. The value should be Base64 encoded.\n" + }, + "provider": { + "type": "string", + "maxLength": 32, + "description": "Possible values:\n- cardinal\n- inauth\n- threatmetrix\n" + } + } + } + }, + "httpAcceptBrowserValue": { + "type": "string", + "maxLength": 255, + "description": "Value of the Accept header sent by the customer\u2019s web browser.\n**Note** If the customer\u2019s browser provides a value, you must include it in your request.\n" + }, + "httpAcceptContent": { + "type": "string", + "maxLength": 256, + "description": "The exact content of the HTTP accept header.\n" + }, + "httpBrowserEmail": { + "type": "string", + "description": "Email address set in the customer\u2019s browser, which may differ from customer email.\n" + }, + "httpBrowserLanguage": { + "type": "string", + "maxLength": 8, + "description": "Value represents the browser language as defined in IETF BCP47.\nExample:en-US, refer https://en.wikipedia.org/wiki/IETF_language_tag for more details.\n" + }, + "httpBrowserJavaEnabled": { + "type": "boolean", + "description": "A Boolean value that represents the ability of the cardholder browser to execute Java.\nValue is returned from the navigator.javaEnabled property. Possible Values:True/False\n" + }, + "httpBrowserJavaScriptEnabled": { + "type": "boolean", + "description": "A Boolean value that represents the ability of the cardholder browser to execute JavaScript. Possible Values:True/False.\n**Note**: Merchants should be able to know the values from fingerprint details of cardholder's browser.\n" + }, + "httpBrowserColorDepth": { + "type": "string", + "maxLength": 2, + "description": "Value represents the bit depth of the color palette for displaying images, in bits per pixel.\nExample : 24, refer https://en.wikipedia.org/wiki/Color_depth for more details\n" + }, + "httpBrowserScreenHeight": { + "type": "string", + "maxLength": 6, + "description": "Total height of the Cardholder's scree in pixels, example: 864.\n" + }, + "httpBrowserScreenWidth": { + "type": "string", + "maxLength": 6, + "description": "Total width of the cardholder's screen in pixels. Example: 1536.\n" + }, + "httpBrowserTimeDifference": { + "type": "string", + "maxLength": 5, + "description": "Time difference between UTC time and the cardholder browser local time, in minutes, Example:300\n" + }, + "userAgentBrowserValue": { + "type": "string", + "maxLength": 255, + "description": "Value of the User-Agent header sent by the customer\u2019s web browser.\nNote If the customer\u2019s browser provides a value, you must include it in your request.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "alternateName": { + "type": "string", + "maxLength": 13, + "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" + }, + "contact": { + "type": "string", + "maxLength": 14, + "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "administrativeArea": { + "type": "string", + "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "phone": { + "type": "string", + "maxLength": 13, + "description": "Merchant phone as contact information for CNP transactions\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + }, + "countryOfOrigin": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" + } + } + }, + "domainName": { + "type": "string", + "maxLength": 127, + "description": "This field will contain either the merchant url or the reverse domain as per the requirement for DSRP Format 3. This might vary transaction to transaction and might not be static. Merchant needs to have access to send this value for all DSRP program.\n" + }, + "salesOrganizationId": { + "type": "string", + "maxLength": 11, + "description": "Company ID assigned to an independent sales organization. Get this value from Mastercard.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 106-116\n- Field: Mastercard Independent Sales Organization ID\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\nFor processor-specific information, see the `sales_organization_ID` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "categoryCode": { + "type": "integer", + "maximum": 9999, + "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" + }, + "categoryCodeDomestic": { + "type": "integer", + "maximum": 9999, + "description": "Merchant category code for domestic transactions. The value for this field is a four-digit number that the payment\ncard industry uses to classify merchants into market segments. A payment card company assigned one or more of these\nvalues to your business when you started accepting the payment card company\u2019s cards. Including this field in a request\nfor a domestic transaction might reduce interchange fees.\n\nWhen you include this field in a request:\n- Do not include the `merchant_category_code` field.\n- The value for this field overrides the value in your CyberSource account.\n\nThis field is supported only for:\n- Domestic transactions with Mastercard in Spain. Domestic means that you and the cardholder are in the same country.\n- Merchants enrolled in the OmniPay Direct interchange program.\n- First Data Merchant Solutions (Europe) on OmniPay Direct.\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "cardAcceptorReferenceNumber": { + "type": "string", + "maxLength": 25, + "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "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" + }, + "serviceFeeDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 22, + "description": "Name of the service provider that is collecting the service fee. The service provider name must consist of\n3, 7, or 12 characters followed by an asterisk (*). This value must also include the words \u201cService Fee.\u201d\n\nWhen you include more than one consecutive space, extra spaces are removed. Use one of the following formats\nfor this value:\n- <3-character name>*Service Fee\n- <7-character name>*Service Fee\n- <12-character name>*Service Fee\n\nWhen payments are made in installments, this value must also include installment information such as\n\u201c1 of 5\u201d or \u201c3 of 7.\u201d For installment payments, use one of the following formats for this value:\n- <3-character name>*Service Fee* of \n- <7-character name>*Service Fee* of \n- <12-character name>*Service Fee* of \n\nwhere is the payment number and is the total number of payments.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource\naccount.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" + }, + "contact": { + "type": "string", + "maxLength": 11, + "description": "Contact information for the service provider that is collecting the service fee. when you include more than one\nconsecutive space, extra spaces are removed.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" + }, + "state": { + "type": "string", + "maxLength": 20, + "description": "State or territory in which the service provider is located.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" + } + } + }, + "cancelUrl": { + "type": "string", + "maxLength": 255, + "description": "customer would be redirected to this url based on the decision of the transaction" + }, + "successUrl": { + "type": "string", + "maxLength": 255, + "description": "customer would be redirected to this url based on the decision of the transaction" + }, + "failureUrl": { + "type": "string", + "maxLength": 255, + "description": "customer would be redirected to this url based on the decision of the transaction" + }, + "merchantName": { + "type": "string", + "maxLength": 25, + "description": "Use this field only if you are requesting payment with Payer Authentication serice together.\n\nYour company\u2019s name as you want it to appear to the customer in the issuing bank\u2019s authentication form.\nThis value overrides the value specified by your merchant bank.\n" + } + } + }, + "aggregatorInformation": { + "type": "object", + "properties": { + "aggregatorId": { + "type": "string", + "maxLength": 20, + "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "name": { + "type": "string", + "maxLength": 37, + "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "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.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" + }, + "name": { + "type": "string", + "maxLength": 37, + "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" + }, + "address1": { + "type": "string", + "maxLength": 38, + "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "locality": { + "type": "string", + "maxLength": 21, + "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "region": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s region.\n\n**Example**\\\n`NE` indicates that the sub-merchant is in the northeast region.\n\nFor processor-specific details, see `submerchant_region` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "email": { + "type": "string", + "maxLength": 40, + "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s 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" + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "cavv": { + "type": "string", + "maxLength": 40, + "description": "Cardholder authentication verification value (CAVV)." + }, + "cavvAlgorithm": { + "type": "string", + "maxLength": 1, + "description": "Algorithm used to generate the CAVV for Visa Secure or the UCAF authentication data for Mastercard Identity Check.\n" + }, + "eciRaw": { + "type": "string", + "maxLength": 2, + "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "paresStatus": { + "type": "string", + "maxLength": 1, + "description": "Payer authentication response status.\n\nFor details, see `pares_status` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "veresEnrolled": { + "type": "string", + "maxLength": 1, + "description": "Verification response enrollment status.\n\nFor details, see `veres_enrolled` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "xid": { + "type": "string", + "maxLength": 40, + "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "ucafCollectionIndicator": { + "type": "string", + "maxLength": 1, + "description": "Universal cardholder authentication field (UCAF) collection indicator.\n\nFor details, see `ucaf_collection_indicator` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR7\n- Position: 5\n- Field: Mastercard Electronic Commerce Indicators\u2014UCAF Collection Indicator\n" + }, + "ucafAuthenticationData": { + "type": "string", + "maxLength": 32, + "description": "Universal cardholder authentication field (UCAF) data.\n\nFor details, see `ucaf_authentication_data` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "strongAuthentication": { + "type": "object", + "properties": { + "lowValueExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the low value exemption indicator with one of the following values:\nPossible values:\n- `0` ( low value exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment)\n" + }, + "riskAnalysisExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the transaction risk analysis exemption indicator with one of the following values:\nPossible values:\n- `0` (TRA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS)\n" + }, + "trustedMerchantExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "Possible values:\n- `0` (Trusted merchant exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder)\n" + }, + "secureCorporatePaymentIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the secure corporate payment exemption indicator with one of the following values:\nPossible values:\n- `0` (SCA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment)\n" + }, + "delegatedAuthenticationExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the delegated authentication exemption indicator with one of the following values:\nPossible values:\n- `0` (delegated Authentication exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer))\n" + }, + "outageExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the outage exemption indicator with one of the following values:\nPossible values:\n- `0` (Outage Authentication exemption does not apply to the transaction)\n- `1` (Outage exempt from SCA as authentication could not be done due to outage)\n" + }, + "authenticationIndicator": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of Authentication request\n\n01 - Payment transaction\n\n02 - Recurring transaction\n\n03 - Installment transaction\n\n04 - Add card\n\n05 - Maintain card\n\n06 - Cardholder verification as part of EMV token ID and V\n" + } + } + }, + "directoryServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" + }, + "paSpecificationVersion": { + "type": "string", + "maxLength": 1, + "description": "This field contains 3DS version that was used for Secured Consumer Authentication (SCA). For example 3DS secure version 1.0.2 or 2.0.0 is used for Secured Consumer Authentication.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 113 , Field: MC AVV Verification\u2014Program Protocol\nIt will contain one of the following values:\n- `1` (3D Secure Version 1.0 (3DS 1.0))\n- `2` (EMV 3-D Secure (3DS 2.0))\n" + }, + "authenticationType": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" + }, + "responseAccessToken": { + "type": "string", + "description": "JWT returned by the 3D Secure provider when the authentication is complete. Required for Hybrid integration if you use the Cybersource-generated access token. Note: Max. length of this field is 2048 characters.\n" + }, + "acsTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\n" + }, + "acsWindowSize": { + "type": "string", + "maxLength": 2, + "description": "An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.\n\n01 - 250x400\n\n02 - 390x400\n\n03 - 500x600\n\n04 - 600x400\n\n05 - Full page\n" + }, + "alternateAuthenticationData": { + "type": "string", + "maxLength": 2048, + "description": "Data that documents and supports a specific authentication process.\n" + }, + "alternateAuthenticationDate": { + "type": "string", + "maxLength": 14, + "description": "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM\n" + }, + "alternateAuthenticationMethod": { + "type": "string", + "description": "Mechanism used by the cardholder to authenticate to the 3D Secure requestor.\nPossible values:\n- `01`: No authentication occurred\n- `02`: Login using merchant system credentials\n- `03`: Login using Federated ID\n- `04`: Login using issuer credentials\n- `05`: Login using third-party authenticator\n- `06`: Login using FIDO Authenticator\n" + }, + "authenticationDate": { + "type": "string", + "maxLength": 14, + "description": "The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request\npayload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be\nprovided by merchant in authorization request if calling an external 3DS provider.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\nFormat: YYYYMMDDHHMMSS\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" + }, + "challengeCancelCode": { + "type": "string", + "maxLength": 2, + "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" + }, + "challengeCode": { + "type": "string", + "description": "Possible values:\n- `01`: No preference\n- `02`: No challenge request\n- `03`: Challenge requested (3D Secure requestor preference)\n- `04`: Challenge requested (mandate)\n- `05`: No challenge requested (transactional risk analysis is already performed)\n- `06`: No challenge requested (Data share only)\n- `07`: No challenge requested (strong consumer authentication is already performed)\n- `08`: No challenge requested (utilize whitelist exemption if no challenge required)\n- `09`: Challenge requested (whitelist prompt requested if challenge required)\n**Note** This field will default to `01` on merchant configuration and can be overridden by the merchant.\nEMV 3D Secure version 2.1.0 supports values `01-04`. Version 2.2.0 supports values `01-09`.\n\nFor details, see `pa_challenge_code` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html)\n" + }, + "challengeStatus": { + "type": "string", + "maxLength": 2, + "description": "The `consumerAuthenticationInformation.challengeCode` indicates the authentication type/level, or challenge, that was presented to the cardholder\nat checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to\nthe issuer the alternative authentication methods that the consumer used.\n" + }, + "customerCardAlias": { + "type": "string", + "maxLength": 128, + "description": "An alias that uniquely identifies the customer's account and credit card on file.\nNote This field is required if Tokenization is enabled in the merchant profile settings.\n" + }, + "decoupledAuthenticationIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" + }, + "decoupledAuthenticationMaxTime": { + "type": "string", + "maxLength": 5, + "description": "Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes).\nPossible Values: Numeric values between 1 and 10080 accepted.\n" + }, + "defaultCard": { + "type": "boolean", + "description": "Indicates that the card being used is the one designated as the primary payment card for purchase.\nRecommended for Discover ProtectBuy.\n" + }, + "deviceChannel": { + "type": "string", + "maxLength": 10, + "description": "Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.\n" + }, + "installmentTotalCount": { + "type": "integer", + "maxLength": 4, + "description": "An integer value greater than 1 indicating the max number of permitted authorizations for installment payments.\n**Note** This is required if the merchant and cardholder have agreed to installment payments.\n" + }, + "merchantFraudRate": { + "type": "string", + "maxLength": 2, + "description": "Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes).\nPossible Values:\n1 = Represents fraud rate <=1\n\n2 = Represents fraud rate >1 and <=6\n\n3 = Represents fraud rate >6 and <=13\n\n4 = Represents fraud rate >13 and <=25\n\n5 = Represents fraud rate >25\n\nEEA** = European Economic Area\nRTS** = Regulatory Technical Standards\nPSD2** = Payment Services Directive\n" + }, + "marketingOptIn": { + "type": "boolean", + "description": "Indicates whether the customer has opted in for marketing offers.\nRecommended for Discover ProtectBuy.\n" + }, + "marketingSource": { + "type": "string", + "maxLength": 40, + "description": "Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.\n" + }, + "mcc": { + "type": "string", + "maxLength": 4, + "description": "Merchant category code.\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "merchantScore": { + "type": "integer", + "maxLength": 2, + "description": "Risk Score provided by merchants. This is specific for CB transactions.\n" + }, + "messageCategory": { + "type": "string", + "description": "Category of the message for a specific use case. Possible values:\n\n- `01`: PA- payment authentication\n- `02`: NPA- non-payment authentication\n- `03-79`: Reserved for EMVCo future use (values invalid until defined by EMVCo)\n- `80-99`: Reserved for DS use\n" + }, + "networkScore": { + "type": "string", + "maxLength": 2, + "description": "The global score calculated by the CB scoring platform and returned to merchants.\n\nPossible values: \n- '00' - '99'\n\nWhen you request the payer authentication and authorization services separately, get the value for this field from the pa_network_score reply field. \n\nThis field is supported only for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\n" + }, + "npaCode": { + "type": "string", + "maxLength": 2, + "description": "Non-Payer Authentication Indicator.\nPossible values:\n- `01`: Add card\n- `02`: Maintain card information\n- `03`: Cardholder verification for EMV token\n- `04-80` Reserved for EMVCo\n- `80-90` Reserved DS\n" + }, + "overridePaymentMethod": { + "type": "string", + "description": "Specifies the Brazilian payment account type used for the transaction.\nThis field overrides other payment types that might be specified in the request.\nUse one of the following values for this field:\n- `NA`: Not applicable. Do not override other payment types that are specified in the request.\n- `CR`: Credit card.\n- `DB`: Debit card.\n- `VSAVR`: Visa Vale Refeicao\n- `VSAVA`: Visa Vale Alimentacao\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "overrideCountryCode": { + "type": "string", + "maxLength": 2, + "description": "Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)..\n" + }, + "priorAuthenticationData": { + "type": "string", + "maxLength": 2048, + "description": "This field carry data that the ACS can use to verify the authentication process.\n" + }, + "priorAuthenticationMethod": { + "type": "string", + "maxLength": 2, + "description": "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n\n01 - Frictionless authentication occurred by ACS\n\n02 - Cardholder challenge occurred by ACS\n\n03 - AVS verified\n\n04 - Other issuer methods\n\n05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo)\n\n80-99 - Reserved for DS use\n" + }, + "priorAuthenticationReferenceId": { + "type": "string", + "maxLength": 36, + "description": "This data element contains a ACS Transaction ID for a prior authenticated transaction.\nFor example, the first recurring transaction that was authenticated with the cardholder\n" + }, + "priorAuthenticationTime": { + "type": "string", + "maxLength": 12, + "description": "Date and time in UTC of the prior cardholder authentication. Format \u2013 YYYYMMDDHHMM\n" + }, + "productCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the product code, which designates the type of transaction.\nSpecify one of the following values for this field:\n- AIR: Airline purchase\nImportant Required for American Express SafeKey (U.S.).\n- `ACC`: Accommodation Rental\n- `ACF`: Account funding\n- `CHA`: Check acceptance\n- `DIG`: Digital Goods\n- `DSP`: Cash Dispensing\n- `GAS`: Fuel\n- `GEN`: General Retail\n- `LUX`: Luxury Retail\n- `PAL`: Prepaid activation and load\n- `PHY`: Goods or services purchase\n- `QCT`: Quasi-cash transaction\n- `REN`: Car Rental\n- `RES`: Restaurant\n- `SVC`: Services\n- `TBD`: Other\n- `TRA`: Travel\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "returnUrl": { + "type": "string", + "maxLength": 2048, + "description": "The URL of the merchant\u2019s return page. CyberSource adds this return URL to the step-up JWT and returns it in the\nresponse of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL.\nOnce the bank session completes, the merchant receives a POST to their URL. This response contains the completed\nbank session\u2019s transactionId. The merchant\u2019s return page should capture the transaction ID and send it in the\nPayer Authentication validation call.\n" + }, + "requestorId": { + "type": "string", + "maxLength": 35, + "description": "Cardinal's directory server assigned 3DS Requestor ID value" + }, + "requestorInitiatedAuthenticationIndicator": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of 3RI request.\n\nPossible Values:\n\n01 - Recurring transaction\n\n02 - Installment transaction\n\n03 - Add card\n\n04 - Maintain card\n\n05 - Account verification\n\n06 - Split/delayed shipment\n\n07 - Top-up\n\n08 - Mail Order\n\n09 - Telephone Order\n\n10 - Whitelist status check\n\n11 - Other payment\n" + }, + "requestorName": { + "type": "string", + "maxLength": 40, + "description": "Cardinal's directory server assigned 3DS Requestor Name value" + }, + "referenceId": { + "type": "string", + "maxLength": 50, + "description": "Reference ID that corresponds to the device fingerprinting data that was collected previously.\nNote Required for Hybrid integration.\n" + }, + "sdkMaxTimeout": { + "type": "string", + "maxLength": 2, + "description": "This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes).\n\nPossible Values:\n\nGreater than or equal to 05 (05 is the minimum timeout to set)\n\nCardinal Default is set to 15\n\nNOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed\n" + }, + "secureCorporatePaymentIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies.\nPossible Values : 0/1\n" + }, + "transactionMode": { + "type": "string", + "description": "Transaction mode identifier. Identifies the channel from which the transaction originates.\nPossible values:\n\n- `M`: MOTO (Mail Order Telephone Order)\n- `R`: Retail\n- `S`: eCommerce\n- `P`: Mobile Device\n- `T`: Tablet\n" + }, + "whiteListStatus": { + "type": "string", + "maxLength": 1, + "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" + }, + "effectiveAuthenticationType": { + "type": "string", + "maxLength": 2, + "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" + }, + "signedParesStatusReason": { + "type": "string", + "maxLength": 2, + "description": "Provides additional information as to why the PAResStatus has a specific value.\n" + }, + "signedPares": { + "type": "string", + "description": "Payer authentication result (PARes) message returned by the card-issuing bank.\nIf you need to show proof of enrollment checking, you may need to\ndecrypt and parse the string for the information required by the payment card company.\nFor more information, see \"Storing Payer Authentication Data,\" page 160.\nImportant The value is in base64. You must remove all carriage returns and line feeds before\nadding the PARes to the request.\n" + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + }, + "terminalSerialNumber": { + "type": "string", + "maxLength": 32, + "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "cardholderVerificationMethodUsed": { + "type": "integer", + "description": "Method that was used to verify the cardholder's identity. Possible values:\n\n - `0`: No verification\n - `1`: Signature\n - `2`: PIN\n - `3`: Cardholder device CVM\n" + }, + "laneNumber": { + "type": "string", + "maxLength": 8, + "description": "Identifier for an alternate terminal at your retail location. You define the value for this field.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors.\nUse the `terminalId` field to identify the main terminal at your retail location. If your retail location has multiple terminals,\nuse this `laneNumber` field to identify the terminal used for the transaction.\n\nThis field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor.\n\nOptional field.\n\n#### Card present reply messaging\nIdentifier for an alternate terminal at your retail location. You defined the value for this field in the request\nmessage. This value must be printed on the receipt.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global.\n" + }, + "catLevel": { + "type": "integer", + "minimum": 1, + "maximum": 9, + "description": "Type of cardholder-activated terminal. Possible values:\n\n - 1: Automated dispensing machine\n - 2: Self-service terminal\n - 3: Limited amount terminal\n - 4: In-flight commerce (IFC) terminal\n - 5: Radio frequency device\n - 6: Mobile acceptance terminal\n - 7: Electronic cash register\n - 8: E-commerce device at your location\n - 9: Terminal or cash register that uses a dialup connection to connect to the transaction processing network\n\n#### Chase Paymentech Solutions\nOnly values 1, 2, and 3 are supported.\n\nRequired if `pointOfSaleInformation.terminalID` is included in the request; otherwise, optional.\n\n#### CyberSource through VisaNet\nValues 1 through 6 are supported on\nCyberSource through VisaNet, but some\nacquirers do not support all six values.\n\nOptional field.\n\n#### FDC Nashville Global\nOnly values 7, 8, and 9 are supported.\n\nOptional field for EMV transactions; otherwise, not used.\n\n#### GPN\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### JCN Gateway\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### TSYS Acquiring Solutions\nOnly value 6 is supported.\n\nRequired for transactions from mobile devices; otherwise, not used.\n\n#### All other processors\nNot used.\n\nNonnegative integer.\n" + }, + "entryMode": { + "type": "string", + "maxLength": 11, + "description": "Method of entering payment card information into the POS terminal. Possible values:\n\n - `contact`: Read from direct contact with chip card.\n - `contactless`: Read from a contactless interface using chip data.\n - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.\n - `swiped`: Read from credit card magnetic stripe.\n\nThe `contact`, `contactless`, and `msd` values are supported only for EMV transactions.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### Card Present\nCard present information about EMV applies only to credit card processing and PIN debit processing. All other\ncard present information applies only to credit card processing.\n\n#### PIN debit\nRequired for a PIN debit purchase and a PIN debit credit request.\n" + }, + "terminalCapability": { + "type": "integer", + "minimum": 1, + "maximum": 5, + "description": "POS terminal\u2019s capability. Possible values:\n\n - `1`: Terminal has a magnetic stripe reader only.\n - `2`: Terminal has a magnetic stripe reader and manual entry capability.\n - `3`: Terminal has manual entry capability only.\n - `4`: Terminal can read chip cards.\n - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards.\n\nFor an EMV transaction, the value of this field must be `4` or `5`.\n\n#### PIN debit\nRequired for PIN debit purchase and PIN debit credit request.\n\n#### Used by\n**Authorization**\nRequired for the following processors:\n- American Express Direct\n- Chase Paymentech Solutions\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- FDMS Nashville\n- OmniPay Direct\n- SIX\n- Worldpay VAP\n\nOptional for the following processors:\n- CyberSource through VisaNet\n- GPN\n- GPX\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n" + }, + "operatingEnvironment": { + "type": "string", + "maxLength": 1, + "description": "Operating environment.\n\nPossible values for all card types except Mastercard:\n- `0`: No terminal used or unknown environment.\n- `1`: On merchant premises, attended.\n- `2`: On merchant premises, unattended. Examples: oil, kiosks, self-checkout, mobile telephone, personal digital assistant (PDA).\n- `3`: Off merchant premises, attended. Examples: portable POS devices at trade shows, at service calls, or in taxis.\n- `4`: Off merchant premises, unattended. Examples: vending machines, home computer, mobile telephone, PDA.\n- `5`: On premises of cardholder, unattended.\n- `9`: Unknown delivery mode.\n- `S`: Electronic delivery of product. Examples: music, software, or eTickets that are downloaded over the internet.\n- `T`: Physical delivery of product. Examples: music or software that is delivered by mail or by a courier.\n\n#### Possible values for Mastercard:\n- `2`: On merchant premises, unattended, or cardholder terminal. Examples: oil, kiosks, self-checkout, home computer, mobile telephone, personal digital assistant (PDA). Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n- `4`: Off merchant premises, unattended, or cardholder terminal. Examples: vending machines, home computer, mobile telephone, PDA. Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThis field is supported only for American Express Direct and CyberSource through VisaNet.\n" + }, + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + }, + "cardholderVerificationMethodUsed": { + "type": "integer", + "description": "Method that was used to verify the cardholder's identity.\n\nPossible values:\n - `0`: No verification\n - `1`: Signature\n\nThis field is supported only on **American Express Direct**.\n" + }, + "cardSequenceNumber": { + "type": "string", + "maxLength": 3, + "description": "Number assigned to a specific card when two or more cards are associated with the same primary account number.\nThis value enables issuers to distinguish among multiple cards that are linked to the same account. This value\ncan also act as a tracking tool when reissuing cards. When this value is available, it is provided by the chip\nreader. When the chip reader does not provide this value, do not include this field in your request.\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is\navailable only on CyberSource through VisaNet and FDC Nashville Global.\n\n#### Used by\nAuthorization: Optional\nPIN Debit processing: Optional\n\n#### GPX\n\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "fallback": { + "type": "boolean", + "maxLength": 5, + "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" + }, + "fallbackCondition": { + "type": "integer", + "description": "Reason for the EMV fallback transaction. An EMV fallback transaction occurs when an EMV transaction fails for\none of these reasons:\n\n - Technical failure: the EMV terminal or EMV card cannot read and process chip data.\n - Empty candidate list failure: the EMV terminal does not have any applications in common with the EMV card.\n EMV terminals are coded to determine whether the terminal and EMV card have any applications in common.\n EMV terminals provide this information to you.\n\nPossible values:\n\n - `1`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal either used information from a successful chip read or it was not a chip transaction.\n - `2`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal was an EMV fallback transaction because the attempted chip read was unsuccessful.\n\nThis field is supported only on **GPN** and **JCN Gateway**.\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field\nwhen the EMV terminal does not have any applications in common with the EMV card.\n" + }, + "isRepeat": { + "type": "boolean", + "description": "#### Visa Platform Connect\nValue \u201ctrue\u201d indicates this transaction is intentionally duplicated . The field contains value \u201ctrue\u201d which\nindicates that merchant has intentionally duplicated single tap transaction. Merchant is intentionally sending\na duplicate auth request for a single tap txn because the issuer requested a PIN.\n" + } + } + }, + "amexCapnData": { + "type": "string", + "maxLength": 15, + "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "trackData": { + "type": "string", + "description": "Card\u2019s track 1 and 2 data. For all processors except FDMS Nashville, this value consists of\none of the following:\n\n - Track 1 data\n - Track 2 data\n - Data for both tracks 1 and 2\n\nFor FDMS Nashville, this value consists of one of the following:\n - Track 1 data\n - Data for both tracks 1 and 2\n\nExample: %B4111111111111111^SMITH/JOHN ^1612101976110000868000000?;4111111111111111=16121019761186800000?\n\n#### Used by\n**Authorization**\nRequired for Chase Paymentech Solutions, Credit Mutuel-CIC, CyberSource through VisaNet, FDC Nashville Global,\nJCN Gateway, OmniPay Direct, and SIX if `pointOfSaleInformation.entryMode` is equal to one of these values:\n- `contact`\n- `contactless`\n- `msd`\n- `swiped`\nOtherwise, this field not used.\n\nRequired for all other processors if `pointOfSaleInformation.entryMode=swiped`; otherwise, this field is not used.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### PIN debit\nTrack 2 data from the debit card. The sentinels are required.\nRequired field for a PIN debit purchase and a PIN debit credit.\n" + }, + "storeAndForwardIndicator": { + "type": "string", + "maxLength": 1, + "description": "When connectivity is unavailable, the client software that is installed on the POS terminal can store a\ntransaction in its memory and send it for authorization when connectivity is restored. This value is provided by\nthe client software that is installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\nPossible values:\n- `Y`: Transaction was stored and then forwarded.\n- `N` (default): Transaction was not stored and then forwarded.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "cardholderVerificationMethod": { + "type": "array", + "items": { + "type": "string", + "example": [ + "PIN", + "Signature", + "pinOnGlass" + ] + }, + "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\nOptional field.\nPossible values:\n- `PIN`: For terminals with a PIN Pad\n- `Signature`: For terminals capable of receiving a signature\n- `pinOnGlass`: For terminals where PIN is entered on a glass-based capture mechanism\n\n**EXAMPLE**: [\"PIN\",\"Signature\"]; [\"pinOnGlass\",\"Signature\"]\n" + }, + "terminalInputCapability": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Complete list of card input methods supported by the terminal.\n\nPossible values:\n- `Keyed`: Terminal can accept card data that is entered manually.\n- `Swiped`: Terminal can accept card data from a magnetic stripe reader.\n- `Contact`: Terminal can accept card data in EMV contact mode (\"dipping a card\").\n- `Contactless`: Terminal can accept card data in EMV contactless mode (\"tapping a card\").\n- `BarCode`: Terminal can read bar codes.\n- `QRcode`: Terminal can read or scan QR codes.\n- `OCR`: Terminal can perform optical character recognition (OCT) on the card.\n\n**EXAMPLE**: [\"Keyed\",\"Swiped\",\"Contact\",\"Contactless\"]\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "terminalCardCaptureCapability": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the terminal can capture the card.\n\nPossible values:\n- `1`: Terminal can capture card.\n- `0`: Terminal cannot capture card.\n\nFor authorizations and credits, this field is supported only by these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n\nOptional field.\n" + }, + "terminalOutputCapability": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the terminal can print or display messages.\n\nPossible values:\n- 1: Neither\n- 2: Print only\n- 3: Display only\n- 4: Print and display\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "terminalPinCapability": { + "type": "integer", + "description": "Maximum PIN length that the terminal can capture.\n\nPossible values:\n- 0: No PIN capture capability\n- 1: PIN capture capability unknown\n- 4: Four characters\n- 5: Five characters\n- 6: Six characters\n- 7: Seven characters\n- 8: Eight characters\n- 9: Nine characters\n- 10: Ten characters\n- 11: Eleven characters\n- 12: Twelve characters\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n- SIX\n\nRequired field for authorization or credit of PIN transactions.\n" + }, + "deviceId": { + "type": "string", + "maxLength": 32, + "description": "Value created by the client software that uniquely identifies the POS device. This value is provided by the\nclient software that is installed on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + }, + "pinBlockEncodingFormat": { + "type": "integer", + "maximum": 9, + "description": "Format that is used to encode the PIN block. This value is provided by the client software that is installed on\nthe POS terminal.\n\nPossible values:\n- `0`: ISO 9564 format 0\n- `1`: ISO 9564 format 1\n- `2`: ISO 9564 format 2\n- `3`: ISO 9564 format 3\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also supported by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n\n#### GPX\nFor chip and online PIN transactions for authorization, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Offline PIN\n- Chip and Signature\n\nFor PIN Debit Purchase and Credit Service transactions, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Online PIN\n" + }, + "encryptedPin": { + "type": "string", + "maxLength": 16, + "description": "Encrypted PIN.\n\nThis value is provided by the client software that is installed on the POS terminal.\n\n#### Used by\n**Authorization, PIN Debit**\nRequired when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\nRequired for PIN debit credit or PIN debit purchase.\nRequired for online PIN transactions.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" + }, + "encryptedKeySerialNumber": { + "type": "string", + "maxLength": 20, + "description": "Combination of the device's unique identifier and a transaction counter that is used in the process of\ndecrypting the encrypted PIN. The entity that injected the PIN encryption keys into the terminal decrypts the\nencrypted PIN and creates this value.\n\nFor all terminals that are using derived unique key per transaction (DUKPT) encryption, this is generated as a\nsingle number within the terminal.\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n- Required for online PIN transactions\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" + }, + "partnerSdkVersion": { + "type": "string", + "maxLength": 32, + "description": "Version of the software installed on the POS terminal. This value is provided by the client software that is\ninstalled on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "emvApplicationIdentifierAndDedicatedFileName": { + "type": "string", + "maxLength": 32, + "description": "This 32 byte length-maximum EBCDIC-K value is used to identify which chip application was performed between the terminal and the chip product.\nThe included values are the Application Identifier (AID) and the Dedicated File (DF) name. It is available to early- or full-option VSDC issuers.\nOnly single byte Katakana characters that can map to the EBCDIC-K table expected in the name.\n" + }, + "terminalCompliance": { + "type": "string", + "maxLength": 2, + "description": "Flag that indicates whether the terminal is compliant with standards mandated by the Reserve Bank of India for card-present domestic transactions in India.\n\nFormat:\n- First character indicates whether the terminal supports terminal line encryption (TLE). Possible values:\n - 1: Not certified\n - 2: Certified\n- Second character indicates whether the terminal supports Unique Key Per Transaction (UKPT) and Derived Unique Key Per Transaction (DUKPT). Possible values:\n - 1: Not certified\n - 2: Certified\n\n**Example** `21` indicates that the terminal supports TLE but does not support UKPT/DUKPT.\n\nYou and the terminal vendors are responsible for terminal certification. If you have questions, contact your acquirer.\n\nThis field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 92-93\n- Field: Mastercard Terminal Compliance Indicator\n\nThe 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n\n#### Used by\n**Authorization**\nRequired for card-present transactions in India. Otherwise, not used.\n" + }, + "isDedicatedHardwareTerminal": { + "type": "string", + "maxLength": 1, + "description": "Type of mPOS device. Possible values:\n- 0: Dongle\n- 1: Phone or tablet\n\nThis optional field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 141\n- Field: Mastercard mPOS Transaction\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s\nacquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n" + }, + "terminalModel": { + "type": "string", + "maxLength": 32, + "description": "This is the model name of the reader which is used to accept the payment.\nPossible values:\n - E3555\n - P400\n - A920\n" + }, + "terminalMake": { + "type": "string", + "maxLength": 32, + "description": "This is the manufacturer name of the reader which is used to accept the payment.\nPossible values:\n - PAX\n - Verifone\n - Ingenico\n" + }, + "serviceCode": { + "type": "string", + "maxLength": 3, + "description": "#### Visa Platform Connect\nMastercard service code that is included in the track data.\nYou can extract the service code from the track data and provide it in this API field.\nThis field is supported only for Mastercard on Visa Platform Connect.\n" + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "installmentInformation": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 12, + "description": "Amount for the current installment payment.\n\nThis field is supported only for CyberSource through VisaNet.\n\nFor details, see `installment_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "frequency": { + "type": "string", + "maxLength": 1, + "description": "Frequency of the installment payments. When you do not include this field in a request for a\nCrediario installment payment, CyberSource sends a space character to the processor.\n\nFor details, see `installment_frequency` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for CyberSource through VisaNet. Possible values:\n- `B`: Biweekly\n- `M`: Monthly\n- `W`: Weekly\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR9\n- Position: 41\n- Field: Installment Frequency\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "planType": { + "type": "string", + "maxLength": 1, + "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" + }, + "sequence": { + "type": "integer", + "maximum": 99, + "description": "Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nWhen you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor.\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 38-40\n- Field: Installment Payment Number\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 12, + "description": "Total amount of the loan that is being paid in installments. This field is supported only for CyberSource\nthrough VisaNet.\n\nFor details, see \"Installment Payments\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "totalCount": { + "type": "integer", + "maximum": 99, + "description": "Total number of installments when making payments in installments.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\n\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### American Express Direct, Cielo, and Comercio Latino\nThis value is the total number of installments you approved.\n\n#### CyberSource Latin American Processing in Brazil\nThis value is the total number of installments that you approved. The default is 1.\n\n#### All Other Processors\nThis value is used along with _sequence_ to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as _sequence_ = 2 and _totalCount_ = 5.\n\n#### CyberSource through VisaNet\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 23-25\n- Field: Number of Installments\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 7-8\n- Field: Number of Installments\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR1\n- Position: 7-8\n- Field: Number of Installments\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR5\n- Position: 20-22\n- Field: Installment Total Count\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" + }, + "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.\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" + }, + "invoiceData": { + "type": "string", + "maxLength": 20, + "description": "Invoice information that you want to provide to the issuer. This value is similar to a tracking number and is\nthe same for all installment payments for one purchase.\n\nThis field is supported only for installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 51-70\n- Field: Purchase Identification\n" + }, + "paymentType": { + "type": "string", + "maxLength": 1, + "description": "Payment plan for the installments.\n\nPossible values:\n- 0 (default): Regular installment. This value is not allowed for airline transactions.\n- 1: Installment payment with down payment.\n- 2: Installment payment without down payment. This value is supported only for airline transactions.\n- 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions.\n- 4: Down payment only; regular installment payment will follow.\n- 5: Boarding fee only. This value is supported only for airline transactions.\n\nThis field is supported only for installment payments with Visa on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 9\n- Field: Merchant Installment Supporting Information\n" + }, + "eligibilityInquiry": { + "type": "string", + "maxLength": 9, + "description": "Indicates whether the authorization request is a Crediario eligibility inquiry.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nSet the value for this field to `Crediario`.\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n" + }, + "gracePeriodDuration": { + "type": "string", + "maximum": 99, + "description": "Grace period requested by the customer before the first installment payment is due.\n\nWhen you include this field in a request, you must also include the grace period duration type field.\n\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR5, Position: 100-101, Field: Mastercard Grace Period Details.\n\nThis field is supported only for Mastercard installment payments in Brazil and Greece.\n" + }, + "gracePeriodDurationType": { + "type": "string", + "maxLength": 1, + "description": "Unit for the requested grace period duration.\n\nPossible values:\n- `D`: Days\n- `W`: Weeks\n- `M`: Months\n\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR5, Position: 99, Field: Mastercard Grace Period Details\n\nThis field is supported only for Mastercard installment payments in Brazil and Greece on CyberSource through VisaNet.\n" + }, + "firstInstallmentAmount": { + "type": "string", + "maxLength": 13, + "description": "Amount of the first installment payment. The issuer provides this value when the first installment payment is successful.\nThis field is supported for Mastercard installment payments on CyberSource through VisaNet in all countries except Brazil,Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 23-34\n- Field: Amount of Each Installment\n" + }, + "validationIndicator": { + "type": "string", + "maximum": 1, + "description": "Standing Instruction/Installment validation indicator.\n- '1': Prevalidated\n- '2': Not Validated\n" + }, + "identifier": { + "type": "string", + "maximum": 60, + "description": "Standing Instruction/Installment identifier.\n" + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "maxLength": 2, + "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" + }, + "agency": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 8, + "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" + }, + "name": { + "type": "string", + "maxLength": 25, + "description": "Name of travel agency that made the reservation.\n" + } + } + }, + "autoRental": { + "type": "object", + "properties": { + "noShowIndicator": { + "type": "boolean", + "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" + }, + "customerName": { + "type": "string", + "maxLength": 40, + "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" + }, + "vehicleClass": { + "type": "string", + "maxLength": 4, + "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" + }, + "distanceTravelled": { + "type": "string", + "maxLength": 5, + "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" + }, + "distanceUnit": { + "type": "string", + "maxLength": 1, + "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" + }, + "returnDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "rentalDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "maxFreeDistance": { + "type": "string", + "maxLength": 4, + "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" + }, + "insuranceIndicator": { + "type": "boolean", + "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" + }, + "programCode": { + "type": "string", + "maxLength": 2, + "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" + }, + "returnAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City where the auto was returned to the rental agency.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" + } + } + }, + "rentalAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" + }, + "address1": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "address2": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" + } + } + }, + "agreementNumber": { + "type": "string", + "maxLength": 25, + "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" + }, + "odometerReading": { + "type": "string", + "maxLength": 8, + "description": "Odometer reading at time of vehicle rental.\n" + }, + "vehicleIdentificationNumber": { + "type": "string", + "maxLength": 20, + "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" + }, + "companyId": { + "type": "string", + "maxLength": 12, + "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" + }, + "numberOfAdditionalDrivers": { + "type": "string", + "maxLength": 1, + "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" + }, + "driverAge": { + "type": "string", + "maxLength": 3, + "description": "Age of the driver renting the vehicle.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 2, + "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" + }, + "vehicleMake": { + "type": "string", + "maxLength": 10, + "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" + }, + "vehicleModel": { + "type": "string", + "maxLength": 10, + "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" + }, + "timePeriod": { + "type": "string", + "maxLength": 7, + "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" + }, + "taxDetails": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" + }, + "taxType": { + "type": "string", + "maxLength": 10, + "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" + }, + "taxSummary": { + "type": "string", + "maxLength": 12, + "description": "Summary of all tax types\n" + } + } + }, + "insuranceAmount": { + "type": "string", + "maxLength": 12, + "description": "Insurance charges.\nField is conditional and can include decimal point.\n" + }, + "oneWayDropOffAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" + }, + "adjustedAmountIndicator": { + "type": "string", + "maxLength": 1, + "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" + }, + "adjustedAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" + }, + "fuelCharges": { + "type": "string", + "maxLength": 12, + "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "weeklyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" + }, + "dailyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" + }, + "ratePerMile": { + "type": "string", + "maxLength": 12, + "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" + }, + "mileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" + }, + "extraMileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "lateFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" + }, + "towingCharge": { + "type": "string", + "maxLength": 4, + "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" + }, + "extraCharge": { + "type": "string", + "maxLength": 12, + "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" + }, + "gpsCharge": { + "type": "string", + "maxLength": 12, + "description": "Amount charged for renting a Global Positioning Service (GPS).\n" + }, + "phoneCharge": { + "type": "string", + "maxLength": 12, + "description": "Additional charges incurred for phone usage included on the total bill.\n" + }, + "parkingViolationCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" + }, + "otherCharges": { + "type": "string", + "maxLength": 12, + "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" + } + } + }, + "lodging": { + "type": "object", + "properties": { + "checkInDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "checkOutDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "room": { + "type": "array", + "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", + "items": { + "type": "object", + "properties": { + "dailyRate": { + "type": "string", + "maxLength": 8, + "description": "Daily cost of the room.\n" + }, + "numberOfNights": { + "type": "integer", + "minimum": 1, + "maximum": 9999, + "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" + } + } + } + }, + "smokingPreference": { + "type": "string", + "maxLength": 1, + "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" + }, + "numberOfRooms": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of rooms booked by the cardholder.\n" + }, + "numberOfGuests": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of guests staying in the room.\n" + }, + "roomBedType": { + "type": "string", + "maxLength": 12, + "description": "Type of room, such as queen, king, or two doubles.\n" + }, + "roomTaxType": { + "type": "string", + "maxLength": 10, + "description": "Type of tax, such as tourist or hotel.\n" + }, + "roomRateType": { + "type": "string", + "maxLength": 12, + "description": "Type of rate, such as corporate or senior citizen.\n" + }, + "guestName": { + "type": "string", + "maxLength": 40, + "description": "Name of the guest under which the room is reserved.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Your toll-free customer service phone number.\n" + }, + "corporateClientCode": { + "type": "string", + "maxLength": 17, + "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" + }, + "additionalDiscountAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of an additional coupon or discount.\n" + }, + "roomLocation": { + "type": "string", + "maxLength": 10, + "description": "Location of room, such as lake view or ocean view.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 1, + "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" + }, + "totalTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount.\n" + }, + "prepaidCost": { + "type": "string", + "maxLength": 12, + "description": "Prepaid amount, such as a deposit.\n" + }, + "foodAndBeverageCost": { + "type": "string", + "maxLength": 12, + "description": "Cost for all food and beverages.\n" + }, + "roomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax for the room.\n" + }, + "adjustmentAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" + }, + "phoneCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of telephone services.\n" + }, + "restaurantCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of restaurant purchases\n" + }, + "roomServiceCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of room service.\n" + }, + "miniBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of mini-bar purchases.\n" + }, + "laundryCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of laundry services.\n" + }, + "miscellaneousCost": { + "type": "string", + "maxLength": 12, + "description": "Miscellaneous costs.\n" + }, + "giftShopCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of gift shop purchases.\n" + }, + "movieCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of movies.\n" + }, + "healthClubCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of health club services.\n" + }, + "valetParkingCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of valet parking services.\n" + }, + "cashDisbursementCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of the cash that was disbursed plus any associated service fees\n" + }, + "nonRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of non-room purchases, such as meals and gifts.\n" + }, + "businessCenterCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of business center services.\n" + }, + "loungeBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of lounge and bar purchases.\n" + }, + "transportationCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of transportation services.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 12, + "description": "Gratuity.\n" + }, + "conferenceRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of conference room services.\n" + }, + "audioVisualCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of audio visual services.\n" + }, + "banquestCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of banquet services.\n" + }, + "nonRoomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax on non-room purchases.\n" + }, + "earlyCheckOutCost": { + "type": "string", + "maxLength": 12, + "description": "Service fee for early departure.\n" + }, + "internetAccessCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of Internet access.\n" + } + } + }, + "transit": { + "type": "object", + "properties": { + "airline": { + "type": "object", + "properties": { + "bookingReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" + }, + "carrierName": { + "type": "string", + "maxLength": 15, + "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "ticketIssuer": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 4, + "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" + }, + "name": { + "type": "string", + "maxLength": 20, + "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" + }, + "address": { + "type": "string", + "maxLength": 16, + "description": "Address of the company issuing the ticket.\n" + }, + "locality": { + "type": "string", + "maxLength": 18, + "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 18, + "description": "State in which transaction occured.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Zip code of the city in which transaction occured.\n" + }, + "country": { + "type": "string", + "maxLength": 18, + "description": "Country in which transaction occured.\n" + } + } + }, + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "checkDigit": { + "type": "string", + "maxLength": 1, + "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" + }, + "restrictedTicketIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "transactionType": { + "type": "integer", + "maxLength": 2, + "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" + }, + "extendedPaymentCode": { + "type": "string", + "maxLength": 3, + "description": "The field is not currently supported.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 42, + "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" + }, + "customerCode": { + "type": "string", + "maxLength": 40, + "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "documentType": { + "type": "string", + "maxLength": 1, + "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" + }, + "documentNumber": { + "type": "string", + "maxLength": 14, + "description": "The field is not currently supported.\n" + }, + "documentNumberOfParts": { + "type": "integer", + "maxLength": 4, + "description": "The field is not currently supported.\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 25, + "description": "Invoice number for the airline transaction.\n" + }, + "invoiceDate": { + "type": "integer", + "maxLength": 8, + "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" + }, + "additionalCharges": { + "type": "string", + "maxLength": 20, + "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" + }, + "totalFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingSequence": { + "type": "string", + "maxLength": 2, + "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" + }, + "totalClearingAmount": { + "type": "string", + "maxLength": 20, + "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationSystemCode": { + "type": "string", + "maxLength": 4, + "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "processIdentifier": { + "type": "string", + "maxLength": 3, + "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" + }, + "ticketIssueDate": { + "type": "string", + "maxLength": 8, + "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" + }, + "electronicTicketIndicator": { + "type": "boolean", + "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" + }, + "originalTicketNumber": { + "type": "string", + "maxLength": 14, + "description": "Original ticket number when the transaction is for a replacement ticket.\n" + }, + "purchaseType": { + "type": "string", + "maxLength": 3, + "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 1, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" + }, + "ticketChangeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" + }, + "planNumber": { + "type": "string", + "maxLength": 1, + "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" + }, + "arrivalDate": { + "type": "string", + "maxLength": 8, + "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" + }, + "restrictedTicketDesciption": { + "type": "string", + "maxLength": 20, + "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" + }, + "exchangeTicketAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" + }, + "exchangeTicketFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationType": { + "type": "string", + "maxLength": 32, + "description": "The field is not currently supported.\n" + }, + "boardingFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Boarding fee.\n" + }, + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "carrierCode": { + "type": "string", + "maxLength": 4, + "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "flightNumber": { + "type": "string", + "maxLength": 6, + "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "originatingAirportCode": { + "type": "string", + "maxLength": 5, + "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "class": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "stopoverIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureDate": { + "type": "integer", + "maxLength": 8, + "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "destinationAirportCode": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "fareBasis": { + "type": "string", + "maxLength": 15, + "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" + }, + "departTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of departure tax for this leg of the trip.\n" + }, + "conjunctionTicket": { + "type": "string", + "maxLength": 25, + "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "exchangeTicketNumber": { + "type": "string", + "maxLength": 25, + "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "couponNumber": { + "type": "string", + "maxLength": 1, + "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "departureTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "arrivalTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "arrivalTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "endorsementsRestrictions": { + "type": "string", + "maxLength": 20, + "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "totalFareAmount": { + "type": "string", + "maxLength": 15, + "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "feeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + } + } + } + }, + "ancillaryInformation": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 20, + "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" + }, + "connectedTicketNumber": { + "type": "string", + "maxLength": 15, + "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 15, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "service": { + "type": "array", + "items": { + "type": "object", + "properties": { + "categoryCode": { + "type": "string", + "maxLength": 4, + "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "subCategoryCode": { + "type": "string", + "maxLength": 4, + "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" + } + } + } + } + } + } + } + } + } + } + } + }, + "healthCareInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "array", + "description": "array for Healthcare fields", + "items": { + "type": "object", + "properties": { + "amountType": { + "type": "string", + "maxLength": 35, + "description": "Total amount that has been spent on healthcare in a transaction.\nValid Values for **Visa**:\n- `healthcare` - Total Amount Healthcare\n- `healthcare-transit` - Amount Transit\n- `vision` - Amount Vision/Optical\n- `prescription` - Amount Prescription/RX\n- `clinic` - Amount Clinic/Other Qualified Medical\n- `dental` - Amount Dental\n\n\n`Note:` - Prescription, Clinic and dental amounts must be preceded with the total healthcare amount and cannot occur individually. Vision and Transit must be sent individually and cannot be combined with total healthcare amount or any other amounts. Total Healthcare amount can be sent individually.\n\nValid Values for **MasterCard**:\n- `prescription` - Amount Prescription/RX\n- `eligible-total` - Total Amount Healthcare\n\n\n`Note:` - Prescription must be preceded with the total healthcare amount and cannot occur individually. Total Healthcare amount can be sent individually.\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total Amount that has been spent on the corresponding amountType. This is 13 byte field including sign.\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n" + } + } + } + } + } + }, + "promotionInformation": { + "type": "object", + "properties": { + "additionalCode": { + "type": "string", + "maxLength": 12, + "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" + }, + "code": { + "type": "string", + "maxLength": 12, + "description": "Code for a promotion or discount.\n" + } + } + }, + "tokenInformation": { + "type": "object", + "properties": { + "jti": { + "type": "string", + "maxLength": 64, + "description": "TMS Transient Token, 64 hexadecimal id value representing captured payment credentials (including Sensitive Authentication Data, e.g. CVV).\n" + }, + "transientTokenJwt": { + "type": "string", + "description": "Flex API Transient Token encoded as JWT (JSON Web Token), e.g. Flex microform or Unified Payment checkout result.\n" + }, + "paymentInstrument": { + "type": "object", + "properties": { + "default": { + "type": "boolean", + "description": "Flag that specifies if the Payment Instrument should be made the Customers default.\nPossible values:\n- true\n- false : (default)\n", + "default": false + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "default": { + "type": "boolean", + "description": "Flag that specifies if the Shipping Address should be made the Customers default.\nPossible values:\n- true\n- false : (default)\n", + "default": false + } + } + }, + "networkTokenOption": { + "type": "string", + "description": "Indicates whether a payment network token associated with a TMS token should be used for authorization. This field can contain one of following values:\n\n- `ignore`: Use a tokenized card number for an authorization, even if the TMS token has an associated payment network token.\n- `prefer`: (Default) Use an associated payment network token for an authorization if the TMS token has one; otherwise, use the tokenized card number.\n" + } + } + }, + "invoiceDetails": { + "type": "object", + "description": "invoice Details", + "properties": { + "barcodeNumber": { + "type": "string", + "maxLength": 100, + "description": "Barcode ID scanned from the Payment Application." + } + } + }, + "processorInformation": { + "type": "object", + "description": "Processor Information", + "properties": { + "preApprovalToken": { + "type": "string", + "maxLength": 60, + "description": "Token received in original session service." + }, + "authorizationOptions": { + "type": "object", + "properties": { + "panReturnIndicator": { + "type": "string", + "maxLength": 1, + "description": "#### Visa Platform Connect\nThe field contains the PAN translation indicator for American Express Contactless Transaction. Valid value is\u00a0\n\n1- Expresspay Translation, PAN request\n2- Expresspay Translation, PAN and Expiry date request\n" + } + } + } + } + }, + "riskInformation": { + "type": "object", + "description": "This object is only needed when you are requesting both payment and DM services at same time.", + "properties": { + "profile": { + "type": "object", + "description": "Identifies a risk profile.", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" + } + } + }, + "eventType": { + "type": "string", + "maxLength": 255, + "description": "Specifies one of the following types of events:\n- login\n- account_creation\n- account_update\nFor regular payment transactions, do not send this field.\n" + }, + "buyerHistory": { + "type": "object", + "properties": { + "customerAccount": { + "type": "object", + "properties": { + "lastChangeDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder\u2019s account was last changed.\nThis includes changes to the billing or shipping address, new payment accounts or new users added.\nRecommended for Discover ProtectBuy.\n" + }, + "creationHistory": { + "type": "string", + "description": "The values from the enum can be:\n- GUEST\n- NEW_ACCOUNT\n- EXISTING_ACCOUNT\n" + }, + "modificationHistory": { + "type": "string", + "description": "This field is applicable only in case of EXISTING_ACCOUNT in creationHistory. Possible values:\n- ACCOUNT_UPDATED_NOW\n- ACCOUNT_UPDATED_PAST\n" + }, + "passwordHistory": { + "type": "string", + "description": "This only applies for EXISTING_ACCOUNT in creationHistory.\nThe values from the enum can be:\n- PASSWORD_CHANGED_NOW\n- PASSWORD_CHANGED_PAST\n- PASSWORD_NEVER_CHANGED\n" + }, + "createDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder opened the account.\nRecommended for Discover ProtectBuy.\nThis only applies for EXISTING_ACCOUNT in creationHistory.\n" + }, + "passwordChangeDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder last changed or reset password on account.\nRecommended for Discover ProtectBuy.\nThis only applies for PASSWORD_CHANGED_PAST in passwordHistory.\n" + } + } + }, + "accountHistory": { + "type": "object", + "properties": { + "firstUseOfShippingAddress": { + "type": "boolean", + "description": "Applicable when this is not a guest account.\n" + }, + "shippingAddressUsageDate": { + "type": "string", + "maxLength": 10, + "description": "Date when the shipping address for this transaction was first used.\nRecommended for Discover ProtectBuy.\nIf `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.\n" + } + } + }, + "accountPurchases": { + "type": "integer", + "maxLength": 4, + "description": "Number of purchases with this cardholder account during the previous six months.\nRecommended for Discover ProtectBuy.\n" + }, + "addCardAttempts": { + "type": "integer", + "maxLength": 3, + "description": "Number of add card attempts in the last 24 hours.\nRecommended for Discover ProtectBuy.\n" + }, + "priorSuspiciousActivity": { + "type": "boolean", + "description": "Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.\nRecommended for Discover ProtectBuy.\n" + }, + "paymentAccountHistory": { + "type": "string", + "description": "This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are:\n- PAYMENT_ACCOUNT_EXISTS\n- PAYMENT_ACCOUNT_ADDED_NOW\n" + }, + "paymentAccountDate": { + "type": "integer", + "maxLength": 8, + "description": "Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory\n" + }, + "transactionCountDay": { + "type": "integer", + "maxLength": 3, + "description": "Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours.\nRecommended for Discover ProtectBuy.\n" + }, + "transactionCountYear": { + "type": "integer", + "maxLength": 3, + "description": "Number of transaction (successful or abandoned) for this cardholder account within the last year.\nRecommended for Discover ProtectBuy.\n" + } + } + }, + "auxiliaryData": { + "type": "array", + "items": { + "type": "object", + "description": "Contains auxiliary key-value pairs.", + "properties": { + "key": { + "type": "string", + "maxLength": 255, + "description": "Fields that you can use to send additional data to Risk services.\n**Warning** Auxiliary fields are not intended to and MUST NOT\nbe used to capture personally identifying information.\nAccordingly, merchants are prohibited from capturing,\nobtaining, and/or transmitting any personally identifying\ninformation in or via the auxiliary data fields. Personally\nidentifying information includes, but is not limited to,\naddress, credit card number, social security number,\ndriver's license number, state-issued identification\nnumber, passport number, and card verification numbers\n(CVV, CVC2, CVV2, CID, CVN). In the event CyberSource\ndiscovers that a merchant is capturing and/or transmitting\npersonally identifying information via the auxiliary data\nfields, whether or not intentionally, CyberSource WILL\nimmediately suspend the merchant's account, which will\nresult in a rejection of any and all transaction requests\nsubmitted by the merchant after the point of suspension.\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "String value for the key" + } + } + } + } + } + }, + "acquirerInformation": { + "type": "object", + "properties": { + "acquirerBin": { + "type": "string", + "maxLength": 11, + "description": "Acquirer bank ID number that corresponds to a certificate that Cybersource already has.This ID has this format. 4XXXXX for Visa and 5XXXXX for Mastercard.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Issuers need to be aware of the Acquirer's Country Code when the Acquirer country differs from the Merchant country and the Acquirer is in the EEA (European Economic Area).\n" + }, + "password": { + "type": "string", + "maxLength": 8, + "description": "Registered password for the Visa directory server.\n" + }, + "merchantId": { + "type": "string", + "maxLength": 15, + "description": "Username for the visa directory server that is created when your acquirer sets up your account. This ID might be the same as your merchant ID. the username can be 15 or 23 characters.\n" + } + } + }, + "recurringPaymentInformation": { + "type": "object", + "description": "This object contains recurring payment information.", + "properties": { + "endDate": { + "type": "string", + "maxLength": 10, + "description": "The date after which no further recurring authorizations should be performed. Format: `YYYY-MM-DD`\n**Note** This field is required for recurring transactions.\n" + }, + "frequency": { + "type": "integer", + "maxLength": 4, + "description": "Integer value indicating the minimum number of days between recurring authorizations. A frequency\nof monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months.\n\nExample: 6 months = 168\n\nExample values accepted (31 days):\n- 31\n- 031\n- 0031\n\n**Note** This field is required for recurring transactions.\n" + }, + "numberOfPayments": { + "type": "integer", + "maxLength": 3, + "description": "Total number of payments for the duration of the recurring subscription.\n" + }, + "originalPurchaseDate": { + "type": "string", + "maxLength": 17, + "description": "Date of original purchase. Required for recurring transactions.\nFormat: `YYYY-MM-DDTHH:MM:SSZ`\n**Note**: If this field is empty, the current date is used.\n" + }, + "sequenceNumber": { + "type": "integer", + "maxLength": 3, + "description": "This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC. \nThis field records recurring sequence, e.g. 1st for initial, 2 for subsequent, 3 etc\n" + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "VDP", + "address1": "201 S. Division St.", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "firstName": "RTS", + "phoneNumber": "999999999", + "district": "MI", + "buildingNumber": "123", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "5555555555554444", + "securityCode": "123", + "expirationMonth": "12", + "type": "002" + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2PaymentsPost201Response", + "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." + } + } + }, + "reversal": { + "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." + } + } + }, + "capture": { + "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." + } + } + }, + "customer": { + "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." + } + } + }, + "paymentInstrument": { + "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." + } + } + }, + "shippingAddress": { + "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." + } + } + }, + "instrumentIdentifier": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - AUTHORIZED\n - PARTIAL_AUTHORIZED\n - AUTHORIZED_PENDING_REVIEW\n - AUTHORIZED_RISK_DECLINED\n - PENDING_AUTHENTICATION\n - PENDING_REVIEW\n - DECLINED\n - INVALID_REQUEST\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - AVS_FAILED\n - CONTACT_PROCESSOR\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - INSUFFICIENT_FUND\n - STOLEN_LOST_CARD\n - ISSUER_UNAVAILABLE\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - EXCEEDS_CREDIT_LIMIT\n - INVALID_CVN\n - DECLINED_CHECK\n - BLACKLISTED_CUSTOMER\n - SUSPENDED_ACCOUNT\n - PAYMENT_REFUSED\n - CV_FAILED\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - INVALID_MERCHANT_CONFIGURATION\n - DECISION_PROFILE_REJECT\n - SCORE_EXCEEDS_THRESHOLD\n - PENDING_AUTHENTICATION\n - ACH_VERIFICATION_FAILED\n - DECISION_PROFILE_REVIEW\n - CONSUMER_AUTHENTICATION_REQUIRED\n - CONSUMER_AUTHENTICATION_FAILED\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\n" + }, + "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" + } + } + } + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "bankTransferOptions": { + "type": "object", + "properties": { + "settlementMethod": { + "type": "string", + "maxLength": 1, + "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "fraudScreeningLevel": { + "type": "string", + "maxLength": 1, + "description": "Level of fraud screening.\n\nPossible values:\n- `1`: Validation \u2014 default if the field has not already been configured for your merchant ID\n- `2`: Verification\n\nFor a description of this feature and a list of supported processors, see \"Verification and Validation\" in the [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + } + } + }, + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "enhancedDataEnabled": { + "type": "boolean", + "description": "The possible values for the reply field are:\n- `true` : the airline data was included in the request to the processor.\n- `false` : the airline data was not included in the request to the processor.\n\nReturned by authorization, capture, or credit services.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "authIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag that specifies the purpose of the authorization.\n\nPossible values:\n - `0`: Preauthorization\n - `1`: Final authorization\n" + }, + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + }, + "cardReferenceData": { + "type": "string", + "maxLength": 56, + "description": "The Scheme reference data is a variable length data element up to a maximum of 56 characters. It may be sent by the acquirer in the\nauthorisation response message, and by the terminal (unchanged) in subsequent authorisation request messages associated with the same\ntransaction.\nThis field is used by Streamline and HSBC UK only, at present.\n" + }, + "transactionId": { + "type": "string", + "maxLength": 50, + "description": "Network transaction identifier (TID). You can use this value to identify a specific transaction when you are\ndiscussing the transaction with your processor. Not all processors provide this value.\n\nReturned by the authorization service.\n\n#### PIN debit\nTransaction identifier generated by the processor.\n\nReturned by PIN debit credit.\n\n#### GPX\nProcessor transaction ID.\n\n#### Cielo\nFor Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.\n\n#### Comercio Latino\nFor Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.\n\n#### CyberSource through VisaNet and GPN\nFor details about this value for CyberSource through VisaNet and GPN, see \"Network Transaction Identifiers\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Moneris\nThis value identifies the transaction on a host system. It contains the following information:\n- Terminal used to process the transaction\n- Shift during which the transaction took place\n- Batch number\n- Transaction number within the batch\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\n**Example** For the value\n66012345001069003:\n- Terminal ID = 66012345\n- Shift number = 001\n- Batch number = 069\n- Transaction number = 003\n" + }, + "networkTransactionId": { + "type": "string", + "description": "Same value as `processorInformation.transactionId`" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "responseCodeSource": { + "type": "string", + "maxLength": 1, + "description": "Used by Visa only and contains the response source/reason code that identifies the source of the response decision.\n" + }, + "responseDetails": { + "type": "string", + "maxLength": 255, + "description": "This field might contain information about a decline. This field is supported only for **CyberSource through\nVisaNet**.\n" + }, + "responseCategoryCode": { + "type": "string", + "maxLength": 36, + "description": "Processor-defined response category code. The associated detail error code is in the `processorInformation.responseCode` or `issuerInformation.responseCode`\nfield of the service you requested.\n\nThis field is supported only for:\n\n - Japanese issuers\n - Domestic transactions in Japan\n - Comercio Latino\u2014processor transaction ID required for troubleshooting\n\n#### Maximum length for processors\n\n - Comercio Latino: 36\n - All other processors: 3\n" + }, + "forwardedAcquirerCode": { + "type": "string", + "maxLength": 32, + "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" + }, + "avs": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 1, + "description": "AVS result code.\n\nReturned by authorization service.\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 10, + "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\n**Important** Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\n\nReturned by authorization service.\n" + } + } + }, + "cardVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 1, + "description": "CVN result code.\n\nFor details, see the `auth_cv_result` reply field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "resultCodeRaw": { + "type": "string", + "maxLength": 10, + "description": "CVN result code sent directly from the processor. Returned only when the processor returns this value.\n\n**Important** Do not use this field to evaluate the result of card verification. Use for debugging purposes only.\n" + } + } + }, + "merchantAdvice": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 2, + "description": "Reason the recurring payment transaction was declined. For some processors, this field is used only for\nMastercard. For other processors, this field is used for Visa and Mastercard. And for other processors, this\nfield is not implemented.\n\nPossible values:\n\n - `00`: Response not provided.\n - `01`: New account information is available. Obtain the new information.\n - `02`: Try again later.\n - `03`: Do not try again. Obtain another type of payment from the customer.\n - `04`: Problem with a token or a partial shipment indicator.\n - `21`: Recurring payment cancellation service.\n - `99`: An unknown value was returned from the processor.\n\nFor processor-specific information, see the `auth_merchant_advice_code` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 4, + "description": "Raw merchant advice code sent directly from the processor. This field is used only for Mastercard.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR7\n- Position: 96-99\n- Field: Response Data-Merchant Advice Code\n\n\nFor processor-specific information, see the `auth_merchant_advice_code_raw` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "nameMatch": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThe field contains will contain the Account Name Request Result for zero amount Authorization request. Valid values are:\n\n00 = Name Match Performed\n01 = Name Match not Performed\n02 = Name Match not supported\n" + } + } + }, + "electronicVerificationResults": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s name.\n\nFor details, see `auth_ev_name` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s last name" + }, + "email": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s email address.\n\nFor details, see `auth_ev_email` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "emailRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s email address." + }, + "phoneNumber": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s phone number.\n\nFor details, see `auth_ev_phone_number` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "phoneNumberRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s phone number." + }, + "postalCode": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s postal code.\n\nFor details, see `auth_ev_postal_code` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "postalCodeRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s postal code." + }, + "street": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s street address.\n\nFor details, see `auth_ev_street` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "streetRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s street address." + }, + "name": { + "type": "string", + "maxLength": 30, + "description": "Mapped Electronic Verification response code for the customer\u2019s name.\n" + }, + "nameRaw": { + "type": "string", + "maxLength": 30, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s name.\n" + } + } + }, + "achVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 2, + "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + }, + "resultCodeRaw": { + "type": "string", + "maxLength": 10, + "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "personalIdResult": { + "type": "string", + "maxLength": 1, + "description": "Personal identifier result. This field is supported only for Redecard in Brazil for CyberSource Latin\nAmerican Processing. If you included `buyerInformation.personalIdentification[].ID` in the request, this\nvalue indicates whether or not `buyerInformation.personalIdentification[].ID` matched a value in a record\non file. Returned only when the personal ID result is returned by the processor.\n\nPossible values:\n\n - `Y`: Match\n - `N`: No match\n - `K`: Not supported\n - `U`: Unknown\n - `Z`: No response returned\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America.The information in this field description is for the specific processing\nconnection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n" + } + } + }, + "consumerAuthenticationResponse": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Mapped response code for Visa Secure and American Express SafeKey.\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 3, + "description": "Raw response code sent directly from the processor for Visa Secure and American Express SafeKey:\n" + } + } + }, + "systemTraceAuditNumber": { + "type": "string", + "maxLength": 6, + "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" + }, + "paymentAccountReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Visa-generated reference number that identifies a card-present transaction for which you provided one of the\nfollowing:\n\n - Visa primary account number (PAN)\n - Visa-generated token for a PAN\n\nThis reference number serves as a link to the cardholder account and to all transactions for that account.\nThis reply field is returned only for CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR8\n- Position: 79-110\n- Field: Payment Account Reference\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s acquirer,\nwho uses this information to facilitate end-of-day clearing processing with payment networks.\n" + }, + "transactionIntegrityCode": { + "type": "string", + "maxLength": 2, + "description": "Transaction integrity classification provided by Mastercard. This value specifies Mastercard\u2019s evaluation of\nthe transaction\u2019s safety and security. This field is returned only for **CyberSource through VisaNet**.\n\nFor card-present transactions, possible values:\n\n - `A1`: EMV or token in a secure, trusted environment\n - `B1`: EMV or chip equivalent\n - `C1`: Magnetic stripe\n - `E1`: Key entered\n - `U0`: Unclassified\n\nFor card-not-present transactions, possible values:\n\n - `A2`: Digital transactions\n - `B2`: Authenticated checkout\n - `C2`: Transaction validation\n - `D2`: Enhanced data\n - `E2`: Generic messaging\n - `U0`: Unclassified\n\nFor information about these values, contact Mastercard or your acquirer.\n\n#### CyberSource through VisaNet\n\nThe value for this field corresponds to the following data in the TC 33 capture file,1:\n- Record: CP01 TCR6\n- Position: 136-137\n- Field: Mastercard Transaction Integrity Classification\n\n1 The TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s acquirer, who uses\nthis information to facilitate end-of-day clearing processing with payment networks.\n" + }, + "amexVerbalAuthReferenceNumber": { + "type": "string", + "maxLength": 6, + "description": "Referral response number for a verbal authorization with FDMS Nashville when using an American Express card.\nGive this number to American Express when you call them for the verbal authorization.\n" + }, + "masterCardServiceCode": { + "type": "string", + "maxLength": 2, + "description": "Mastercard service that was used for the transaction. Mastercard provides this value to CyberSource.\n\nPossible value:\n - 53: Mastercard card-on-file token service\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 133-134\n- Field: Mastercard Merchant on-behalf service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" + }, + "masterCardServiceReplyCode": { + "type": "string", + "maxLength": 1, + "description": "Result of the Mastercard card-on-file token service. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `C`: Service completed successfully.\n - `F`: One of the following:\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 81 for an authorization or\n authorization reversal.\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 01 for a tokenized request.\n - Token requestor ID is missing or formatted incorrectly.\n - `I`: One of the following:\n - Invalid token requestor ID.\n - Suspended or deactivated token.\n - Invalid token (not in mapping table).\n - `T`: Invalid combination of token requestor ID and token.\n - `U`: Expired token.\n - `W`: Primary account number (PAN) listed in electronic warning bulletin.\n\n**Note** This field is returned only for **CyberSource through VisaNet**.\n" + }, + "masterCardAuthenticationType": { + "type": "string", + "maxLength": 1, + "description": "Type of authentication for which the transaction qualifies as determined by the Mastercard authentication\nservice, which confirms the identity of the cardholder. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `1`: Transaction qualifies for Mastercard authentication type 1.\n - `2`: Transaction qualifies for Mastercard authentication type 2.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 132\n- Field: Mastercard Member Defined service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" + }, + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\n" + }, + "routing": { + "type": "object", + "properties": { + "network": { + "type": "string", + "maxLength": 4, + "description": "PIN Debit Services:\nContains the ID of the debit network to which the transaction was routed.\n\n| Code | Network |\n| --- | --- |\n| 0000 | Priority Routing or Generic File Update |\n| 0002 | Visa programs, Private Label and non-Visa Authorization Gateway Services |\n| 0003 | Interlink |\n| 0004 | Plus |\n| 0008 | Star |\n| 0009 | Pulse|\n| 0010 | Star |\n| 0011 | Star |\n| 0012 | Star (primary network ID) |\n| 0013 | AFFN |\n| 0015 | Star |\n| 0016 | Maestro |\n| 0017 | Pulse (primary network ID) |\n| 0018 | NYCE (primary network ID) |\n| 0019 | Pulse |\n| 0020 | Accel |\n| 0023 | NETS |\n| 0024 | CU24 |\n| 0025 | Alaska Option |\n| 0027 | NYCE |\n| 0028 | Shazam |\n| 0029 | EBT POS |\n\nFDC Nashville Global authorization service:\n\nIndicates whether the transaction was routed to a credit network, a debit network, or the STAR signature debit\nnetwork.\n- `C`: Credit network\n- `D`: Debit network (without signature)\n- `S`: STAR signature debit network\n" + }, + "networkName": { + "type": "string", + "maxLength": 10, + "description": "Name of the network to which the transaction was routed.\n" + }, + "customerSignatureRequired": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether you need to obtain the cardholder's signature.\n\nPossible values:\n- `Y`: You need to obtain the cardholder's signature.\n- `N`: You do not need to obtain the cardholder's signature.\n" + } + } + }, + "merchantNumber": { + "type": "string", + "maxLength": 15, + "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "retrievalReferenceNumber": { + "type": "string", + "maxLength": 20, + "description": "#### Ingenico ePayments\nUnique number that CyberSource generates to identify the transaction. You can use this value to identify transactions in the Ingenico ePayments Collections Report, which provides settlement information. Contact customer support for information about the report.\n\n### CyberSource through VisaNet\nRetrieval request number.\n" + }, + "paymentUrl": { + "type": "string", + "maxLength": 15, + "description": "Direct the customer to this URL to complete the payment." + }, + "completeUrl": { + "type": "string", + "maxLength": 2048, + "description": "The redirect URL for forwarding the consumer to complete page. This redirect needed by PSP to track browser information of consumer.\nPSP then redirect consumer to merchant success URL.\n" + } + } + }, + "issuerInformation": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 3, + "description": "Country in which the card was issued. This information enables you to determine whether the card was issued\ndomestically or internationally. Use the two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\nThis field is supported for Visa, Mastercard, Discover, Diners Club, JCB, and Maestro (International) on Chase\nPaymentech Solutions.\n\nFor details, see `auth_card_issuer_country` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "discretionaryData": { + "type": "string", + "maxLength": 255, + "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "countrySpecificDiscretionaryData": { + "type": "string", + "maxLength": 140, + "description": "Data defined by the issuer.\n\nThis national use field contains two subfields for information unique to the processing of Visa transactions by members in Japan.\nThis subfield contains the Katakana text to be printed on the receipt.\nFor details, see `jpo_issuer_message` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "responseCode": { + "type": "string", + "maxLength": 6, + "description": "Additional authorization code that must be printed on the receipt when returned by the processor.\n\nThis value is generated by the processor and is returned only for a successful transaction.\n\nThis reply field is supported only for these processors:\n- FDC Nashville Global\n- SIX\n" + }, + "responseRaw": { + "type": "string", + "maxLength": 355, + "description": "issuerInformation.responseRaw is the raw processor auth response returned to merchant in CYBS auth response if\nauth request includes \"processingInformation.isReturnAuthRecordEnabled=true\". If supported by the gateway code,\nit is available to merchants who auth through CYBS and run their own settlement processing.\n" + } + } + }, + "paymentAccountInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "prefix": { + "type": "string", + "maxLength": 6, + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "hashedNumber": { + "type": "string", + "maxLength": 60, + "description": "#### Visa Platform Connect\nThis API field will contain the SHA 256 hashed value of PAN.\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "prefix": { + "type": "string", + "maxLength": 6, + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "hashedNumber": { + "type": "string", + "maxLength": 60, + "description": "#### Visa Platform Connect\nThis API field will contain the SHA 256 hashed value of PAN.\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "properties": { + "prefix": { + "type": "string", + "maxLength": 6, + "description": "First six digits of token. CyberSource includes this field in the reply message when it decrypts the payment\nblob for the tokenized transaction.\n\nFor details, see `token_prefix` field description in [Google Pay Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Google_Pay_SCMP_API/html/)\n" + }, + "suffix": { + "type": "string", + "maxLength": 4, + "description": "Last four digits of token. CyberSource includes this field in the reply message when it decrypts the payment\nblob for the tokenized transaction.\n\nFor details, see `token_suffix` field description in [Google Pay Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Google_Pay_SCMP_API/html/)\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "assuranceLevel": { + "type": "string", + "maxLength": 2, + "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "requestorId": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + } + } + }, + "accountFeatures": { + "type": "object", + "properties": { + "accountType": { + "type": "string", + "maxLength": 2, + "description": "Type of account. This value is returned only if you requested a balance inquiry. Possible values:\n\n - `00`: Not applicable or not specified\n - `10`: Savings account\n - `20`: Checking account\n - `30`: Credit card account\n - `40`: Universal account\n\n#### PIN debit\nType of account. This value is returned only if you requested a balance inquiry.\n\nPossible values:\n- `00`: Not applicable or not specified\n- `10`: Savings account\n- `20`: Checking account\n- `40`: Universal account\n- `96`: Cash benefits account\n- `98`: Food stamp account\n\nReturned by PIN debit purchase.\n" + }, + "accountStatus": { + "type": "string", + "maxLength": 1, + "description": "Possible values:\n- `N`: Nonregulated\n- `R`: Regulated\n\nReturned by PIN debit credit or PIN debit purchase.\n\n**Note** This field is returned only for CyberSource through VisaNet.\n" + }, + "balances": { + "type": "array", + "description": "This is an array of multiple balances information an issuer can return for a given card.", + "items": { + "type": "object", + "properties": { + "accountType": { + "type": "string", + "maxLength": 2, + "description": "Type of account.\n\nThis value is returned only if you request a balance inquiry.\n\nPossible values:\n\n - `00`: Not applicable or not specified\n - `10`: Savings account\n - `20`: Checking account\n - `30`: Credit card account\n - `40`: Universal account\n\nBalance Account Types returned on EBT Debit card transactions:\n\n - `96`: Cash Benefits Account (PIN Debit Gateway EBT only)\n - `98`: Food Stamp Account (PIN Debit Gateway EBT only)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Remaining balance on the account. If the processor returns the sign, positive or negative, this sign is prefixed\nto the amount value as (+/-).\n" + }, + "amountType": { + "type": "string", + "maxLength": 2, + "description": "Type of amount. This value is returned only if you request a balance inquiry. The issuer determines the value\nthat is returned.\n\nPossible values for deposit accounts:\n\n - `01`: Current ledger (posted) balance.\n - `02`: Current available balance, which is typically the ledger balance minus outstanding authorizations. Some\n depository institutions also include pending deposits and the credit or overdraft line associated with the account.\n\nPossible values for credit card accounts:\n\n - `01`: Credit amount remaining for customer (open to buy).\n - `02`: Credit limit.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency of the remaining balance on the account.\n" + } + } + } + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "balanceAmountType": { + "type": "string", + "maxLength": 2, + "description": "Type of amount. This value is returned only if you requested a balance inquiry. The issuer determines the value\nthat is returned. Possible values for deposit accounts:\n\n - `01`: Current ledger (posted) balance.\n - `02`: Current available balance, which is typically the ledger balance less outstanding authorizations.\n\nSome depository institutions also include pending deposits and the credit or overdraft line associated with the\naccount. Possible values for credit card accounts:\n\n - `01`: Credit amount remaining for customer (open to buy).\n - `02`: Credit limit.\n" + }, + "currency": { + "type": "string", + "maxLength": 5, + "description": "Currency of the remaining balance on the account. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nReturned by authorization service.\n\n#### PIN debit\nCurrency of the remaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "balanceSign": { + "type": "string", + "maxLength": 8, + "description": "Sign for the remaining balance on the account. Returned only when the processor returns this value. Possible values:\n\nPossible values:\n- `Positive`\n- `Negative`\n\n#### PIN debit\nSign for the remaining balance on the prepaid card. Returned only when the processor returns this value.\n\nReturned by PIN debit purchase.\n" + }, + "affluenceIndicator": { + "type": "string", + "maxLength": 13, + "description": "**Chase Paymentech Solutions**\n\nIndicates whether a customer has high credit limits. This information enables you to market high cost items to\nthese customers and to understand the kinds of cards that high income customers are using.\n\nThis field is supported for Visa, Mastercard, Discover, and Diners Club. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n\n#### Litle\n\nFlag that indicates that a Visa cardholder or Mastercard cardholder is in one of the affluent categories.\nPossible values:\n\n - `AFFLUENT`: High income customer with high spending pattern (>100k USD annual income and >40k USD annual\n card usage).\n - `MASS AFFLUENT`: High income customer (>100k USD annual income).\n\n Maximum length is 13.\n\n#### Chase Paymentech Solutions\n Maximum length is 1.\n" + }, + "category": { + "type": "string", + "maxLength": 7, + "description": "#### GPX\nMastercard product ID associated with the primary account number (PAN).\nReturned by authorization service.\n\n#### CyberSource through VisaNet\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the [Visa\nRequest & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### GPN\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the\n[Visa Request & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### Worldpay VAP\n**Important** Before using this field on Worldpay VAP,\nyou must contact CyberSource Customer Support to have\nyour account configured for this feature.\n\nType of card used in the transaction. The only possible value is:\n- `PREPAID`: Prepaid Card\n\nData Length: String (7)\n\n#### RBS WorldPay Atlanta\nType of card used in the transaction. Possible values:\n- `B`: Business Card\n- `O`: Noncommercial Card\n- `R`: Corporate Card\n- `S`: Purchase Card\n- `Blank`: Purchase card not supported\n\nData Length: String (1)\n" + }, + "commercial": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is a commercial card, which enables you to include Level II data in your transaction\nrequests. This field is supported for Visa and Mastercard on **Chase Paymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "group": { + "type": "string", + "maxLength": 1, + "description": "Type of commercial card. This field is supported only for CyberSource through VisaNet. Possible values:\n\n - `B`: Business card\n - `R`: Corporate card\n - `S`: Purchasing card\n - `0`: Noncommercial card\n\nReturned by authorization service.\n" + }, + "healthCare": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is a healthcare card. This field is supported for Visa and Mastercard on **Chase\nPaymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "payroll": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is a payroll card. This field is supported for Visa, Discover, Diners Club, and JCB\non **Chase Paymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "level3Eligible": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is eligible for Level III interchange fees, which enables you to include Level III\ndata in your transaction requests. This field is supported for Visa and Mastercard on **Chase Paymentech\nSolutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "pinlessDebit": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is a PINless debit card. This field is supported for Visa and Mastercard on **Chase\nPaymentech Solutions**. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "signatureDebit": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is a signature debit card.\n\nThis information enables you to alter the way an order is processed. For example, you might not want to reauthorize a transaction for a signature debit card, or you might\nwant to perform reversals promptly for a signature debit card. This field is supported for Visa, Mastercard, and\nMaestro (International) on Chase Paymentech Solutions. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "prepaid": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is a prepaid card. This information enables you to determine when a gift card or\nprepaid card is presented for use when establishing a new recurring, installment, or deferred billing\nrelationship.\n\nThis field is supported for Visa, Mastercard, Discover, Diners Club, and JCB on Chase Paymentech Solutions.\nPossible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + }, + "regulated": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the card is regulated according to the Durbin Amendment. If the card is regulated, the card\nissuer is subject to price caps and interchange rules. This field is supported for Visa, Mastercard, Discover,\nDiners Club, and JCB on Chase Paymentech Solutions. Possible values:\n\n - `Y`: Yes\n - `N`: No\n - `X`: Not applicable / Unknown\n" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "correctedAccountNumber": { + "type": "string", + "maxLength": 17, + "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_account_number` or `ecp_credit_corrected_account_number` field descriptions in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "correctedRoutingNumber": { + "type": "string", + "maxLength": 9, + "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_routing_number` or `ecp_credit_corrected_routing_number` reply field descriptions in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 12, + "maxLength": 32 + }, + "state": { + "type": "string", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "scheme": { + "type": "string", + "maxLength": 255, + "description": "Subtype of card account. This field can contain one of the following values:\n- Maestro International\n- Maestro UK Domestic\n- MasterCard Credit\n- MasterCard Debit\n- Visa Credit\n- Visa Debit\n- Visa Electron\n\n**Note** Additional values may be present.\n\nFor all possible values, see the `score_card_scheme` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "bin": { + "type": "string", + "maxLength": 255, + "description": "Credit card BIN (the first six digits of the credit card).Derived either from the `cc_bin` request field\nor from the first six characters of the `customer_cc_num` field.\n\nFor all possible values, see the `score_cc_bin` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "accountType": { + "type": "string", + "maxLength": 255, + "description": "Type of payment card account. This field can refer to a credit card, debit card, or prepaid card\naccount type.\n\nFor all possible values, see the `score_card_account_type` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "issuer": { + "type": "string", + "maxLength": 255, + "description": "Name of the bank or entity that issued the card account.\n\nFor all possible values, see the `score_card_issuer` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "binCountry": { + "type": "string", + "maxLength": 255, + "description": "Country (two-digit country code) associated with the BIN of the customer\u2019s card used for the payment.\nReturned if the information is available. Use this field for additional information when reviewing orders.\nThis information is also displayed in the details page of the CyberSource Business Center.\n\nFor all possible values, see the `bin_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "paymentInsightsInformation": { + "type": "object", + "properties": { + "responseInsights": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 60, + "description": "Categorization of response message from processor\n\nPossible Values:\n- `APPROVED`\n- `ISSUER_WILL_NEVER_APPROVE`\n- `ISSUER_CANT_APPROVE_AT_THIS_TIME`\n- `ISSUER_CANT_APPROVE_WITH_THESE_DETAILS`\n- `GENERIC_ERROR`\n- `OTHERS`\n- `MATCH_NOT_FOUND`\n" + }, + "categoryCode": { + "type": "string", + "maxLength": 2, + "description": "Categorization Code of response message from processor\n\nPossible Values:\n- `01` : Issuer Will Never Approve\n- `02` : Issuer Can't Approve at this Time\n- `03` : Issuer Can't Approve with these Details\n- `04` : Generic Error\n- `98` : Others\n- `99` : Payment Insights Response Category Match Not Found\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "totalAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount you requested for the payment or capture.\n\nThis value is returned for partial authorizations.\nThis field is also returned on incremental authorizations will contain the aggregated amount from the original authorizations and all the incremental authorizations.\n" + }, + "authorizedAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount that was authorized.\n\nReturned by authorization service.\n\n#### PIN debit\nAmount of the purchase.\n\nReturned by PIN debit purchase.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in Merchant Descriptors Using the SCMP API.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "level3TransmissionStatus": { + "type": "boolean", + "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" + }, + "salesSlipNumber": { + "type": "integer", + "maximum": 99999, + "description": "Transaction identifier that is generated. You have the option of printing the sales slip number on the receipt.\nThis field is supported only on Cybersource through Visanet and JCN gateway.\n\nOptional field.\n\n#### Card Present processing message\nIf you included this field in the request, the returned value is the value that you sent in the request.\nIf you did not include this field in the request, the system generated this value for you.\n\nThe difference between this reply field and the `processorInformation.systemTraceAuditNumber` field is that the\nsystem generates the system trace audit number (STAN), and you must print the receipt number on the receipt;\nwhereas you can generate the sales slip number, and you can choose to print the sales slip number on the receipt.\n" + } + } + }, + "rewardPointsDetails": { + "type": "object", + "properties": { + "pointsBeforeRedemption": { + "type": "string", + "maxLength": 10, + "description": "Loyalty points total balance before redemption.\nFor Example: Points, such as 100\n" + }, + "pointsValueBeforeRedemption": { + "type": "string", + "maxLength": 12, + "description": "The total value of loyalty points before redemption in the default currency. Max characters is 12 excluding the \".\" symbol\nFor Example: Points, such as 20.00\n" + }, + "pointsRedeemed": { + "type": "string", + "maxLength": 10, + "description": "Number of loyalty points that were redeemed.\nFor Example: Points, such as 100\n" + }, + "pointsValueRedeemed": { + "type": "string", + "maxLength": 12, + "description": "The value of the loyalty points that were redeemed in the default currency. Max characters is 12 excluding the \".\" symbol\nFor Example: Points, such as 100.00\n" + }, + "pointsAfterRedemption": { + "type": "string", + "maxLength": 10, + "description": "Loyalty Points remaining total balance after redemption.\nFor Example: Points, such as 20.00\n" + }, + "pointsValueAfterRedemption": { + "type": "string", + "maxLength": 12, + "description": "The value of the remaining loyalty points after redumption in the default currency. Max characters is 12 excluding the \".\" symbol\nFor Example: Points, such as 20.00\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + }, + "chipValidationType": { + "type": "string", + "maxLength": 2, + "description": "Entity or service that provided the validation results returned in `chipValidationResult`.\n\nPossible values:\n - `02`: MasterCard on-behalf pre-validation service (The MasterCard authorization platform validated the M/Chip cryptogram before the authorization request reached the issuer.)\n - `03`: MasterCard on-behalf stand-in service (The MasterCard authorization platform validated the M/Chip cryptogram because the issuer was not available.)\n - `50`: Issuer\n - `90`: Chip fall-back transaction downgrade process (The chip could not be read.)\n\nThis field is returned only for NFC payment network tokenization transactions with MasterCard.\n\n**Note** No CyberSource through VisaNet acquirers support EMV at this time.\n" + }, + "chipValidationResult": { + "type": "string", + "maxLength": 1, + "description": "Cryptogram validation results returned by the entity or service specified in `chipValidationType`.\n\nPossible values:\n- `A`: Application cryptogram is valid, but the application transaction counter (ATC) is outside allowed range. (A large jump in ATC values may indicate data copying or other fraud.)\n- `C`: Chip validation was completed successfully.\n- `E`: Application cryptogram is valid but the ATC indicates possible replay fraud.\n- `F`: Format error in the chip data.\n- `G`: Application cryptogram is valid but is not a valid authorization request cryptogram (ARQC).\n- `I`: Application cryptogram is invalid.\n- `T`: Application cryptogram is valid but terminal verification results (TVR) or card verification results (CVR) are invalid.\n- `U`: Application cryptogram could not be validated because of a technical error.\n\nThis field is returned only for NFC payment network tokenization transactions with MasterCard.\n\n**Note** No CyberSource through VisaNet acquirers support EMV at this time.\n" + } + } + }, + "amexCapnData": { + "type": "string", + "maxLength": 15, + "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + } + } + }, + "installmentInformation": { + "type": "object", + "properties": { + "additionalCosts": { + "type": "string", + "maxLength": 12, + "description": "Additional costs charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 128-139\n- Field: Total Other Costs\n" + }, + "additionalCostsPercentage": { + "type": "string", + "maxLength": 4, + "description": "Additional costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 140-143\n- Field: Percent of Total Other Costs\n" + }, + "amount": { + "type": "string", + "maxLength": 12, + "description": "Amount for the current installment payment.\n\nThis field is supported only for CyberSource through VisaNet.\n\nFor details, see `installment_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "amountFunded": { + "type": "string", + "maxLength": 12, + "description": "Amount funded.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 48-59\n- Field: Total Amount Funded\n" + }, + "amountRequestedPercentage": { + "type": "string", + "maxLength": 4, + "description": "Amount requested divided by the amount funded.\n\nFor example:\n- A value of 90.0 specifies 90%.\n- A value of 93.7 specifies 93.7%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 60-63\n- Field: Percent of Amount Requested\n" + }, + "annualFinancingCost": { + "type": "string", + "maxLength": 7, + "description": "Annual cost of financing the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 158-164\n- Field: Annual Total Cost of Financing\n" + }, + "annualInterestRate": { + "type": "string", + "maxLength": 7, + "description": "Annual interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 151-157\n- Field: Annual Interest Rate\n" + }, + "expenses": { + "type": "string", + "maxLength": 12, + "description": "Expenses charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 64-75\n- Field: Total Expenses\n" + }, + "expensesPercentage": { + "type": "string", + "maxLength": 4, + "description": "Expenses divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 76-79\n- Field: Percent of Total Expenses\n" + }, + "fees": { + "type": "string", + "maxLength": 12, + "description": "Fees charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 80-91\n- Field: Total Fees\n" + }, + "feesPercentage": { + "type": "string", + "maxLength": 4, + "description": "Fees divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 92-95\n- Field: Percent of Total Fees\n" + }, + "frequency": { + "type": "string", + "maxLength": 1, + "description": "Frequency of the installment payments. When you do not include this field in a request for a\nCrediario installment payment, CyberSource sends a space character to the processor.\n\nFor details, see `installment_frequency` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for CyberSource through VisaNet. Possible values:\n- `B`: Biweekly\n- `M`: Monthly\n- `W`: Weekly\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR9\n- Position: 41\n- Field: Installment Frequency\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "insurance": { + "type": "string", + "maxLength": 12, + "description": "Insurance charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 112-123\n- Field: Total Insurance\n" + }, + "insurancePercentage": { + "type": "string", + "maxLength": 4, + "description": "Insurance costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 124-127\n- Field: Percent Of Total Insurance\n" + }, + "invoiceData": { + "type": "string", + "maxLength": 20, + "description": "Invoice information that you want to provide to the issuer. This value is similar to a tracking number and is\nthe same for all installment payments for one purchase.\n\nThis field is supported only for installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 51-70\n- Field: Purchase Identification\n" + }, + "monthlyInterestRate": { + "type": "string", + "maxLength": 7, + "description": "Monthly interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 144-150\n- Field: Monthly Interest Rate\n" + }, + "planType": { + "type": "string", + "maxLength": 1, + "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" + }, + "sequence": { + "type": "integer", + "maximum": 99, + "description": "Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nWhen you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor.\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 38-40\n- Field: Installment Payment Number\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" + }, + "taxes": { + "type": "string", + "maxLength": 12, + "description": "Taxes collected by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 96-107\n- Field: Total Taxes\n" + }, + "taxesPercentage": { + "type": "string", + "maxLength": 4, + "description": "Taxes divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 108-111\n- Field: Percent of Total Taxes\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 12, + "description": "Total amount of the loan that is being paid in installments. This field is supported only for CyberSource\nthrough VisaNet.\n\nFor details, see \"Installment Payments\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "totalCount": { + "type": "integer", + "maximum": 99, + "description": "Total number of installments when making payments in installments.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\n\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### American Express Direct, Cielo, and Comercio Latino\nThis value is the total number of installments you approved.\n\n#### CyberSource Latin American Processing in Brazil\nThis value is the total number of installments that you approved. The default is 1.\n\n#### All Other Processors\nThis value is used along with _sequence_ to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as _sequence_ = 2 and _totalCount_ = 5.\n\n#### CyberSource through VisaNet\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 23-25\n- Field: Number of Installments\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 7-8\n- Field: Number of Installments\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR1\n- Position: 7-8\n- Field: Number of Installments\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR5\n- Position: 20-22\n- Field: Installment Total Count\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" + }, + "minimumTotalCount": { + "type": "string", + "maximum": 99, + "description": "\"Minimum number of installments offered by the issuer for this purchase. The issuer provides this value when the first installment payment is successful.\nThis field is supported for installment payments with Mastercard on CyberSource through VisaNet in all countries except Brazil, Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 75-76\n- Field: Mastercard Minimum Number Of Installments\n" + }, + "maximumTotalCount": { + "type": "string", + "maximum": 99, + "description": "Maximum number of installments offered by the issuer for this purchase. The issuer provides this value when the first installment payment is successful.\nThis field is supported for installment payments with Mastercard on CyberSource through VisaNet in all countries except Brazil, Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR5\n- Position: 77-78\n- Field: Mastercard Maximum Number Of Installments\n" + }, + "firstInstallmentAmount": { + "type": "string", + "maxLength": 13, + "description": "Amount of the first installment payment. The issuer provides this value when the first installment payment is successful.\nThis field is supported for Mastercard installment payments on CyberSource through VisaNet in all countries except Brazil,Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 23-34\n- Field: Amount of Each Installment\n" + }, + "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.\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" + } + } + }, + "tokenInformation": { + "type": "object", + "properties": { + "instrumentidentifierNew": { + "type": "boolean", + "description": "A value of true means the card number or bank account used to create an Instrument Identifier was new and did not already exist in the token vault.\nA value of false means the card number or bank account used to create an Instrument Identifier already existed in the token vault.\n" + }, + "customer": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customer token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 12, + "maxLength": 32 + }, + "state": { + "type": "string", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "dateOfBirth": { + "type": "string", + "maxLength": 8, + "description": "Recipient\u2019s date of birth. **Format**: `YYYYMMDD`.\n\nThis field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters\nbut otherwise does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" + }, + "issuedBy": { + "type": "string", + "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "verificationResults": { + "type": "string", + "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" + } + } + } + }, + "taxId": { + "type": "string", + "description": "The description for this field is not available." + } + } + }, + "riskInformation": { + "type": "object", + "description": "Contains the result of risk assessment.", + "properties": { + "profile": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" + }, + "desinationQueue": { + "type": "string", + "maxLength": 255, + "description": "Name of the queue where orders that are not automatically accepted are sent.\n" + }, + "selectorRule": { + "type": "string", + "maxLength": 255, + "description": "Name of the profile selector rule that chooses the profile to use for the\ntransaction. If no profile selector exists, the value is Default Active Profile.\n" + } + } + }, + "rules": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 255, + "description": "Description of the rule as it appears in the Profile Editor." + }, + "decision": { + "type": "string", + "maxLength": 255, + "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" + } + } + } + }, + "infoCodes": { + "type": "object", + "properties": { + "velocity": { + "type": "array", + "description": "List of information codes triggered by the order. These information codes were generated when you created\nthe order and product velocity rules and are returned so that you can associate them with the rules.\n", + "items": { + "type": "string", + "description": "Indicates excessive volume of transactions." + } + }, + "address": { + "type": "array", + "description": "Indicates a mismatch between the customer\u2019s billing and shipping addresses.\n", + "items": { + "type": "string" + } + }, + "customerList": { + "type": "array", + "description": "Indicates that customer information is associated with transactions that are either on the negative or\nthe positive list.\n", + "items": { + "type": "string" + } + }, + "deviceBehavior": { + "type": "array", + "description": "Indicates the device behavior information code(s) returned from device fingerprinting.\n", + "items": { + "type": "string" + } + }, + "identityChange": { + "type": "array", + "description": "Indicates excessive identity changes. The threshold is variable depending on the identity elements being\ncompared.\n", + "items": { + "type": "string" + } + }, + "internet": { + "type": "array", + "description": "Indicates a problem with the customer\u2019s email address, IP address, or billing address.\n", + "items": { + "type": "string" + } + }, + "phone": { + "type": "array", + "description": "Indicates a problem with the customer\u2019s phone number.\n", + "items": { + "type": "string" + } + }, + "suspicious": { + "type": "array", + "description": "Indicates that the customer provided potentially suspicious information.\n", + "items": { + "type": "string" + } + }, + "globalVelocity": { + "type": "array", + "description": "Indicates that the customer has a high purchase frequency.\n", + "items": { + "type": "string" + } + } + } + }, + "velocity": { + "type": "object", + "properties": { + "morphing": { + "type": "array", + "description": "List of information codes triggered by the order. These information codes were generated when you created the order and product velocity rules and are returned so that you can associate them with the rules.\n\nReturned by scoring service.\n", + "items": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "maxLength": 5, + "description": "Morphing count specified by the number #.\n\n**Note** The count is not returned for the initial transaction.\n" + }, + "fieldName": { + "type": "string", + "maxLength": 255, + "description": "Field name of the morphing element. specified by the setting that you chose in the\nVelocity Editor.\n\nFor all possible values, see the `decisionReply_morphingElement_#_fieldName` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "informationCode": { + "type": "string", + "maxLength": 255, + "description": "Identifier that CyberSource assigned to the velocity rule specified by the number #.\n\nFor all possible values, see the `decision_velocity_morphing_#_info_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > \n" + } + } + } + }, + "address": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255, + "description": "Indicates a mismatch between the customer's billing and shipping addresses.\n\nFor all possible values, see the `score_address_info` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + } + }, + "casePriority": { + "type": "integer", + "maxLength": 1, + "description": "You receive this field only if you subscribe to the Enhanced Case Management service. The priority level ranges from 1 (highest) to 5 (lowest); the default value is 3. If you do not assign a priority to your rules or to your profiles, the default value is given to the order.\n\nFor all possible values, see the `decision_case_priority` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "localTime": { + "type": "string", + "maxLength": 255, + "description": "The customer's local time (`hh:mm:ss`), which is calculated from the transaction request time and the\ncustomer's billing address.\n\nFor details, see the `score_time_local` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/)\n" + }, + "score": { + "type": "object", + "properties": { + "factorCodes": { + "type": "array", + "items": { + "type": "string", + "description": "This field contains information that affected the score of the order.\nThis field will contain one or more codes, separated by carets (^).\n\nFor all possible values, see the `score_factors` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + }, + "modelUsed": { + "type": "string", + "maxLength": 255, + "description": "Name of the score model used for the transaction. If you did not include a custom model in your request,\nthis field contains the name of CyberSource\u2019s default model.\n\nFor all possible values, see the `score_model_used` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "result": { + "type": "string", + "maxLength": 255, + "description": "Total score calculated for this order. The value cannot be negative.\n\nFor all possible values, see the `score_score_result` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "ipAddress": { + "type": "object", + "description": "Contains detailed response information about the customer's IP address.", + "properties": { + "anonymizerStatus": { + "type": "string", + "maxLength": 255, + "description": "Indicates whether the transaction IP address is associated with a known anonymous proxy.\n\nFor all possible values, see the `score_ip_anonymizer_status` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "locality": { + "type": "string", + "maxLength": 255, + "description": "Name of the city decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_city` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "country": { + "type": "string", + "maxLength": 255, + "description": "Name of the country decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 255, + "description": "Name of the state decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_state` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "routingMethod": { + "type": "string", + "maxLength": 255, + "description": "Routing method decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_routing_method` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "carrier": { + "type": "string", + "maxLength": 255, + "description": "Provides the name of the organization that owns the ASN. The carrier is responsible for the traffic carried on the network or set of networks designated as an Autonomous System (AS) and identified by the ASN.\nWhile there are more than 27,000 active ASNs, there are fewer carriers, because a single carrier often manages several ASNs.\n" + }, + "organization": { + "type": "string", + "maxLength": 255, + "description": "The Registering Organization is the entity responsible for the actions and content associated with a given block of IP addresses. This is in contrast to the carrier, which is responsible for the routing of traffic for network blocks. Registering Organizations include many types of entities, including corporate, government, or educational entities, and ISPs managing the allocation and use of network blocks.\n" + } + } + }, + "providers": { + "type": "object", + "properties": { + "providerName": { + "type": "array", + "items": { + "type": "object", + "description": "Name of the 3rd party provider, for example, Emailage.\n\nFor all possible values, see the `decision_provider_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n", + "properties": { + "fieldName": { + "type": "array", + "items": { + "type": "string", + "description": "Field name, for example, email address domain name (domain_name).\n\nFor all possible values, see the `decision_provider_#_field_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + }, + "fieldValue": { + "type": "array", + "items": { + "type": "string", + "description": "Value for the field, for example, yahoo.com." + } + } + } + } + } + } + }, + "travel": { + "type": "object", + "properties": { + "actualFinalDestination": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of actual final destination on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of actual final destination on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of actual final destination on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of actual final destination on the route." + } + } + }, + "firstDeparture": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of first departure on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of first departure on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of first departure on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of first departure on the route." + } + } + }, + "firstDestination": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of first destination on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of first destination on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of first destination on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of first destination on the route." + } + } + }, + "lastDestination": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of last destination on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of last destination on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of last destination on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of last destination on the route." + } + } + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "accessToken": { + "type": "string", + "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" + }, + "acsRenderingType": { + "type": "string", + "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" + }, + "acsTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" + }, + "acsUrl": { + "type": "string", + "maxLength": 2048, + "description": "URL for the card-issuing bank\u2019s authentication form that you receive when the card is enrolled.\nThe value can be very large.\n" + }, + "authenticationPath": { + "type": "string", + "description": "Indicates what displays to the customer during the authentication process.\nThis field can contain one of these values:\n- `ADS`: (Card not enrolled) customer prompted to activate the card during the checkout process.\n- `ATTEMPTS`: (Attempts processing) Processing briefly displays before the checkout process is completed.\n- `ENROLLED`: (Card enrolled) the card issuer\u2019s authentication window displays.\n- `UNKNOWN`: Card enrollment status cannot be determined.\n- `NOREDIRECT`: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer.\n\nThe following values can be returned if you are using rules-based payer authentication.\n- `RIBA`: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely\nto be challenged cannot be determined.\n- `RIBA_PASS`: The card-issuing bank supports risk-based authentication and it is likely that the\ncardholder will not be challenged to provide credentials, also known as _silent authentication_.\n\nFor details about possible values, see `pa_enroll_authentication_path` field description and \"Rules-Based Payer Authentication\"\nin [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" + }, + "authorizationPayload": { + "type": "string", + "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" + }, + "cardholderMessage": { + "type": "string", + "maxLength": 128, + "description": "Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder.\nFor example, \u201cAdditional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.\u201d.\nThe Issuing Bank can optionally support this value.\n" + }, + "cavv": { + "type": "string", + "maxLength": 255, + "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" + }, + "cavvAlgorithm": { + "type": "string", + "maxLength": 1, + "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" + }, + "challengeCancelCode": { + "type": "string", + "maxLength": 2, + "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" + }, + "challengeRequired": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a challenge is required in order to complete authentication.\n**Note** Regional mandates might determine that a challenge is required.\n\nPossible values:\n- `Y`: Challenge required\n- `N`: Challenge not required\n**Note** Used by the Hybrid integration.\n" + }, + "decoupledAuthenticationIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" + }, + "directoryServerErrorCode": { + "type": "string", + "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" + }, + "directoryServerErrorDescription": { + "type": "string", + "maxLength": 4096, + "description": "Directory server text and additional detail about the error for this transaction.\n" + }, + "ecommerceIndicator": { + "type": "string", + "maxLength": 255, + "description": "Commerce indicator for cards not enrolled. This field contains one of these values:\n- `internet`: Card not enrolled, or card type not supported by payer authentication. No liability shift.\n- `js_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `js_failure`: J/Secure directory service is not available. No liability shift.\n- `spa`: Mastercard card not enrolled in the SecureCode program. No liability shift.\n- `vbv_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `vbv_failure`: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive\nthis result if Visa\u2019s directory service is not available. No liability shift.\n" + }, + "eci": { + "type": "string", + "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" + }, + "eciRaw": { + "type": "string", + "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" + }, + "effectiveAuthenticationType": { + "type": "string", + "maxLength": 2, + "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" + }, + "ivr": { + "type": "object", + "properties": { + "enabledMessage": { + "type": "boolean", + "description": "Flag to indicate if a valid IVR transaction was detected.\n" + }, + "encryptionKey": { + "type": "string", + "maxLength": 16, + "description": "Encryption key to be used in the event the ACS requires encryption of the credential field.\n" + }, + "encryptionMandatory": { + "type": "boolean", + "description": "Flag to indicate if the ACS requires the credential to be encrypted.\n" + }, + "encryptionType": { + "type": "string", + "maxLength": 20, + "description": "An indicator from the ACS to inform the type of encryption that should be used in the event the ACS requires encryption of the credential field.\n" + }, + "label": { + "type": "string", + "maxLength": 20, + "description": "An ACS Provided label that can be presented to the Consumer. Recommended use with an application.\n" + }, + "prompt": { + "type": "string", + "maxLength": 80, + "description": "An ACS provided string that can be presented to the Consumer. Recommended use with an application.\n" + }, + "statusMessage": { + "type": "string", + "maxLength": 80, + "description": "An ACS provided message that can provide additional information or details.\n" + } + } + }, + "strongAuthentication": { + "type": "object", + "properties": { + "issuerInformation": { + "type": "object", + "properties": { + "riskAnalysisExemptionResult": { + "type": "string", + "maxLength": 80, + "description": "Possible values: Visa Platform Connect\n- `8401` Merchant not participating in Visa Trusted Listing Program.\n- `8402` Issuer not participating in Visa Trusted Listing Program.\n- `8403` Cardholder has not trusted the merchant (supplied by Visa Net).\n- `8404` Indeterminate or invalid issuer response.\n- `8473` Cardholder has not trusted the merchant (issuer-supplied).\n- `8474` Did not meet the exemption criteria (issuer-supplied).\n\nUpto 20 Values may be received in a transaction.\n" + }, + "trustedMerchantExemptionResult": { + "type": "string", + "maxLength": 4, + "description": "Possible values: Visa Platform Connect\n- `2` Trusted merchant exemption validated/honored.\n- `3` Trusted merchant exemption failed validation/not honored.\n" + } + } + } + } + }, + "networkScore": { + "type": "string", + "maxLength": 2, + "description": "The global score calculated by the CB scoring platform and returned to merchants.\n" + }, + "pareq": { + "type": "string", + "description": "Payer authentication request (PAReq) message that you need to forward to the ACS.\nThe value can be very large. The value is in base64.\n" + }, + "paresStatus": { + "type": "string", + "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" + }, + "proofXml": { + "type": "string", + "description": "Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need\nto show proof of enrollment checking, you may need to parse the string for the information required by the\npayment card company. The value can be very large. For details about possible values, see the `pa_enroll_proofxml` field description in\n[CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n- For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.\n- For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment\nchecking for any payer authentication transaction that you re-present because of a chargeback.\n" + }, + "proxyPan": { + "type": "string", + "description": "Encrypted version of the card number used in the payer authentication request message.\n" + }, + "sdkTransactionId": { + "type": "string", + "maxLength": 36, + "description": "SDK unique transaction identifier that is generated on each new transaction.\n" + }, + "signedParesStatusReason": { + "type": "string", + "maxLength": 2, + "description": "Provides additional information as to why the PAResStatus has a specific value.\n" + }, + "specificationVersion": { + "type": "string", + "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" + }, + "stepUpUrl": { + "type": "string", + "maxLength": 2048, + "description": "The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.\n" + }, + "threeDSServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" + }, + "ucafAuthenticationData": { + "type": "string", + "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" + }, + "ucafCollectionIndicator": { + "type": "string", + "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" + }, + "veresEnrolled": { + "type": "string", + "description": "Result of the enrollment check. This field can contain one of these values:\n- `Y`: Card enrolled or can be enrolled; you must authenticate. Liability shift.\n- `N`: Card not enrolled; proceed with authorization. Liability shift.\n- `U`: Unable to authenticate regardless of the reason. No liability shift.\n\n**Note** This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for\nthis processor, you must send the value of this field in your authorization request.\n\nThe following value can be returned if you are using rules-based Payer Authentication:\n- `B`: Indicates that authentication was bypassed.\n\nFor details, see `pa_enroll_veres_enrolled` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" + }, + "whiteListStatusSource": { + "type": "string", + "maxLength": 2, + "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" + }, + "xid": { + "type": "string", + "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" + }, + "directoryServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" + }, + "authenticationResult": { + "type": "string", + "description": "Raw authentication data that comes from the cardissuing bank. Primary authentication field that\nindicates if authentication was successful and if liability shift occurred. You should examine first the\nresult of this field. This field contains one of these values:\n- `-1`: Invalid PARes.\n- `0`: Successful validation.\n- `1`: Cardholder is not participating, but the attempt to authenticate was recorded.\n- `6`: Issuer unable to perform authentication.\n- `9`: Cardholder did not complete authentication.\n" + }, + "authenticationStatusMsg": { + "type": "string", + "description": "Message that explains the authenticationResult reply field.\n" + }, + "indicator": { + "type": "string", + "description": "Indicator used to differentiate Internet transactions from other types. The authentication failed if this field\nis not returned. For Visa, if your payment processor is Streamline, Barclays, AIBMS, or FDC Germany,\nyou receive the value vbv_failure instead of internet when eci is 07.\nThe value of this field is passed automatically to the authorization service if you request the services\ntogether. This field contains one of these values:\n- `aesk`: American Express SafeKey authentication verified successfully.\n- `aesk_attempted`: Card not enrolled in American Express SafeKey, but the attempt to authenticate was recorded.\n- `dipb`: Discover ProtectBuy authentication verified successfully.\n- `dipb_attempted`: Card not enrolled in Discover ProtectBuy, but the attempt to authenticate was recorded.\n- `internet`: Authentication was not verified successfully.\n- `js`: J/Secure authentication verified successfully.\n- `js_attempted`: Card not enrolled in J/Secure, but the attempt to authenticate was recorded.\n- `moto`: Mail or telephone order.\n- `pb_attempted`: Card not enrolled in Diners Club ProtectBuy, but the attempt to authenticate was recorded.\n- `recurring`: Recurring transaction.\n- `spa`: Mastercard Identity Check authentication verified successfully.\n- `spa_failure`: Mastercard Identity Check failed authentication.\n- `vbv`: Visa Secure authentication verified successfully.\n- `vbv_attempted`: Card not enrolled in Visa Secure, but the attempt to authenticate was recorded.\n- `vbv_failure`: Visa Secure authentication unavailable.\n" + }, + "interactionCounter": { + "type": "string", + "maxLength": 2, + "description": "Indicates the number of authentication cycles attempted by the cardholder and is tracked by the Issuing Banks ACS.Example: if customer gets the challenge window and enter in their one time password and hit submit then that interaction counter should just be 1.\nWhen customer gets the challenge window and the bank asks if they want to have the one time password sent to their phone or their email and they have to choose before going to the next screen to enter in their one time password then this interaction count would be 2.\nOne for the selection of how they want the one time password delivered and another with them actually entering in the one time password and hitting the submit button.\n" + }, + "whiteListStatus": { + "type": "string", + "maxLength": 1, + "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/payments/4963015972176007901546", + "method": "GET" + }, + "authReversal": { + "href": "/pts/v2/payments/4963015972176007901546/reversals", + "method": "POST" + }, + "capture": { + "href": "/pts/v2/payments/4963015972176007901546/captures", + "method": "POST" + }, + "refund": { + "href": "/pts/v2/payments/4963015972176007901546/refunds", + "method": "POST" + }, + "void": { + "href": "/pts/v2/payments/4963015972176007901546/voids", + "method": "POST" + } + }, + "id": "4963015972176007901546", + "submitTimeUtc": "2017-06-01T071957Z", + "status": "200", + "reconciliationId": "39570726X3E1LBQR", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "authorizedAmount": "102.21", + "currency": "USD" + } + }, + "processorInformation": { + "approvalCode": "888888", + "cardVerification": { + "resultCode": "" + }, + "avs": { + "code": "X", + "codeRaw": "I1" + }, + "responseCode": "100" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "ptsV2PaymentsPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - CARD_TYPE_NOT_ACCEPTED\n - INVALID_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\n - INVALID_AMOUNT\n - INVALID_CARD_TYPE\n - INVALID_PAYMENT_ID\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2PaymentsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Simple Authorization(Internet)", + "sample-name": "Process Payment", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "paymentInformation": { + "card": { + "number": "4111111111111111", + "expirationMonth": "12", + "expirationYear": "2031" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + } + }, + "example1": { + "summary": "Authorization with Capture(Sale)", + "sample-name": "Process Payment Simple Authorization with Capture(Sale)", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "capture": true + }, + "paymentInformation": { + "card": { + "number": "4111111111111111", + "expirationMonth": "12", + "expirationYear": "2031" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + } + }, + "example2": { + "summary": "Payment with Flex Token", + "sample-name": "Payment with Flex Token", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "tokenInformation": { + "transientTokenJwt": "eyJraWQiOiIwN0JwSE9abkhJM3c3UVAycmhNZkhuWE9XQlhwa1ZHTiIsImFsZyI6IlJTMjU2In0.eyJkYXRhIjp7ImV4cGlyYXRpb25ZZWFyIjoiMjAyMCIsIm51bWJlciI6IjQxMTExMVhYWFhYWDExMTEiLCJleHBpcmF0aW9uTW9udGgiOiIxMCIsInR5cGUiOiIwMDEifSwiaXNzIjoiRmxleC8wNyIsImV4cCI6MTU5MTc0NjAyNCwidHlwZSI6Im1mLTAuMTEuMCIsImlhdCI6MTU5MTc0NTEyNCwianRpIjoiMUMzWjdUTkpaVjI4OVM5MTdQM0JHSFM1T0ZQNFNBRERCUUtKMFFKMzMzOEhRR0MwWTg0QjVFRTAxREU4NEZDQiJ9.cfwzUMJf115K2T9-wE_A_k2jZptXlovls8-fKY0muO8YzGatE5fu9r6aC4q7n0YOvEU6G7XdH4ASG32mWnYu-kKlqN4IY_cquRJeUvV89ZPZ5WTttyrgVH17LSTE2EvwMawKNYnjh0lJwqYJ51cLnJiVlyqTdEAv3DJ3vInXP1YeQjLX5_vF-OWEuZfJxahHfUdsjeGhGaaOGVMUZJSkzpTu9zDLTvpb1px3WGGPu8FcHoxrcCGGpcKk456AZgYMBSHNjr-pPkRr3Dnd7XgNF6shfzIPbcXeWDYPTpS4PNY8ZsWKx8nFQIeROMWCSxIZOmu3Wt71KN9iK6DfOPro7w" + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "VDP", + "address1": "201 S. Division St.", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "firstName": "RTS", + "phoneNumber": "999999999", + "district": "MI", + "buildingNumber": "123", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + } + }, + "example3": { + "summary": "Payment with Flex Token(Create Permanent TMS token)", + "sample-name": "Payment with Flex Token(Create Permanent TMS token)", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "TOKEN_CREATE" + ], + "actionTokenTypes": [ + "customer", + "paymentInstrument", + "shippingAddress" + ] + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "tokenInformation": { + "transientTokenJwt": "eyJraWQiOiIwODVLd3ZiZHVqZW1DZDN3UnNxVFg3RG5nZzlZVk04NiIsImFsZyI6IlJTMjU2In0.eyJkYXRhIjp7Im51bWJlciI6IjQxMTExMVhYWFhYWDExMTEiLCJ0eXBlIjoiMDAxIn0sImlzcyI6IkZsZXgvMDgiLCJleHAiOjE1OTU2MjAxNTQsInR5cGUiOiJtZi0wLjExLjAiLCJpYXQiOjE1OTU2MTkyNTQsImp0aSI6IjFFMTlWWVlBUEFEUllPSzREUUM1NFhRN1hUVTlYN01YSzBCNTc5UFhCUU1HUUExVU1MOFI1RjFCM0IzQTU4MkIifQ.NKSM8zuT9TQC2OIUxIFJQk4HKeHhj_RGWmEqOQhBi0TIynt_kCIup1UVtAlhPzUfPWLwRrUVXnA9dyjLt_Q-pFZnvZ2lVANbiOq_R0us88MkM_mqaELuInCwxFeFZKA4gl8XmDFARgX1aJttC19Le6NYOhK2gpMrV4i0yz-IkbScsk0_vCH3raayNacFU2Wy9xei6H_V0yw2GeOs7kF6wdtMvBNw_uoLXd77LGE3LmV7z1TpJcG1SXy2s0bwYhEvkQGnrq6FfY8w7-UkDBWT1GhU3ZVP4y7h0l1WEX2xqf_ze25ZiYJQfWrEWPBHXRubOpAuaf4rfeZei0mRwPU-sQ" + } + } + }, + "example4": { + "summary": "Authorization with Customer Token Creation", + "sample-name": "Authorization with Customer Token Creation", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "TOKEN_CREATE" + ], + "actionTokenTypes": [ + "customer", + "paymentInstrument", + "shippingAddress" + ] + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12" + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example5": { + "summary": "Authorization with Customer Token Id", + "sample-name": "Authorization with Customer Token Id", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "customer": { + "id": "AA7D470B3D1232F0E05341588E0A91E3" + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example6": { + "summary": "Authorization with Customer Token, Default Payment Instrument and Shipping Address Creation", + "sample-name": "Authorization with Customer Token, Default Payment Instrument and Shipping Address Creation", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "TOKEN_CREATE" + ], + "actionTokenTypes": [ + "paymentInstrument", + "shippingAddress" + ] + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12" + }, + "customer": { + "id": "AA7D470B3D1232F0E05341588E0A91E3" + } + }, + "tokenInformation": { + "paymentInstrument": { + "default": true + }, + "shippingAddress": { + "default": true + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example7": { + "summary": "Authorization with TMS Token bypassing Network Token", + "sample-name": "Authorization with TMS Token bypassing Network Token", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "tokenInformation": { + "networkTokenOption": "ignore" + }, + "paymentInformation": { + "instrumentIdentifier": { + "id": "7010000000016241111" + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example8": { + "summary": "Authorization with Customer, Payment Instrument and Shipping Address Token Id", + "sample-name": "Authorization with Customer, Payment Instrument and Shipping Address Token Id", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "customer": { + "id": "B21E6717A6F03479E05341588E0A303F" + }, + "paymentInstrument": { + "id": "B21E6B7E8BB3388EE05341588E0AFC84" + }, + "shippingAddress": { + "id": "B21E6717A6F33479E05341588E0A303F" + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example9": { + "summary": "Authorization with Instrument Identifier Token Creation", + "sample-name": "Authorization with Instrument Identifier Token Creation", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "TOKEN_CREATE" + ], + "actionTokenTypes": [ + "instrumentIdentifier" + ], + "commerceIndicator": "internet" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US" + }, + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12" + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example10": { + "summary": "Authorization with Decision Manager", + "sample-name": "Authorization with Decision Manager", + "value": { + "clientReferenceInformation": { + "code": "TSYS_Eh_FE_01" + }, + "orderInformation": { + "billTo": { + "firstName": "JSON", + "lastName": "RTS", + "address1": "201 S. Division St._1", + "locality": "Foster City", + "administrativeArea": "CA", + "postalCode": "94404", + "country": "US", + "email": "beforeauth@cybersource.com", + "phoneNumber": "6504327113" + }, + "amountDetails": { + "totalAmount": "10", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "number": "4111111111111111", + "expirationMonth": "11", + "expirationYear": "2025" + } + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example11": { + "summary": "Authorization - Skip DecisionManager for single transaction", + "sample-name": "Authorization - Skip DecisionManager for single transaction", + "value": { + "processingInformation": { + "actionList": [ + "DECISION_SKIP" + ] + }, + "clientReferenceInformation": { + "code": "TC50171_16" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "amountDetails": { + "totalAmount": "10", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "number": "4111111111111111", + "expirationMonth": "11", + "expirationYear": "2025" + } + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example12": { + "summary": "Authorization with Decision Manager (Device Information)", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "deviceInformation": { + "cookiesAccepted": "yes", + "hostName": "host.com", + "httpBrowserEmail": "xyz@gmail.com", + "userAgent": "Chrome", + "ipAddress": "64.124.61.215" + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example13": { + "summary": "Authorization with Decision Manager (Merchant Defined Information)", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "merchantDefinedInformation": [ + { + "key": "1", + "value": "Test" + }, + { + "key": "2", + "value": "Test2" + } + ] + }, + "parentTag": "Authorization with Decision Manager" + }, + "example14": { + "summary": "Authorization with Decision Manager (Travel Information)", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "travelInformation": { + "completeRoute": "SFO-JFK:JFK-BLR", + "departureTime": "2011-03-20 11:30pm GMT", + "journeyType": "One way", + "legs": [ + { + "destination": "JFK", + "origination": "SFO" + }, + { + "destination": "BLR", + "origination": "JFK" + } + ] + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example15": { + "summary": "Authorization with Decision Manager (Buyer Information)", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "buyerInformation": { + "hashedPassword": "", + "dateOfBirth": "19980505", + "personalIdentification": [ + { + "id": "1a23apwe98", + "type": "CPF" + } + ] + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example16": { + "summary": "Authorization with Decision Manager (Shipping Information)", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + }, + "shipTo": { + "address1": "96, powers street", + "locality": "Clearwater milford", + "country": "IN", + "firstName": "James", + "lastName": "Smith", + "phoneNumber": "7606160717", + "administrativeArea": "KA", + "postalCode": "560056" + } + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example17": { + "summary": "Authorization with Decision Manager (custom setup)", + "sample-name": "Authorization with Decision Manager (custom setup)", + "value": { + "processingInformation": { + "actionList": [ + "DECISION" + ] + }, + "clientReferenceInformation": { + "code": "TC50171_16" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "amountDetails": { + "totalAmount": "10", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "number": "4111111111111111", + "expirationMonth": "11", + "expirationYear": "2025" + } + } + }, + "parentTag": "Authorization with Decision Manager" + }, + "example18": { + "summary": "Authorization with PA Enroll (Authentication Needed)", + "sample-name": "Authorization with PA Enroll (Authentication Needed)", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "CONSUMER_AUTHENTICATION" + ] + }, + "consumerAuthenticationInformation": { + "referenceId": "CybsCruiseTester-8ac0b02f", + "requestorId": "123123197675" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Smith", + "address1": "201 S. Division St._1", + "address2": "Suite 500", + "locality": "Foster City", + "administrativeArea": "CA", + "postalCode": "94404", + "country": "US", + "phoneNumber": "6504327113", + "email": "accept@cybersource.com" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "usd" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2023", + "number": "4000000000001091", + "expirationMonth": "12" + } + } + }, + "parentTag": "Authorization with Payer Authentication" + }, + "example19": { + "summary": "Authorization with Payer Auth Validation", + "sample-name": "Authorization with Payer Auth Validation", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "VALIDATE_CONSUMER_AUTHENTICATION" + ] + }, + "consumerAuthenticationInformation": { + "authenticationTransactionId": "OiCtXA1j1AxtSNDh5lt1" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Smith", + "address1": "201 S. Division St._1", + "address2": "Suite 500", + "locality": "Foster City", + "administrativeArea": "CA", + "postalCode": "94404", + "country": "US", + "phoneNumber": "6504327113", + "email": "accept@cybs.com" + } + }, + "amountDetails": { + "amount": "100.00", + "currency": "USD" + }, + "paymentInformation": { + "card": { + "expirationYear": "2023", + "number": "4000000000001091", + "expirationMonth": "01" + } + } + }, + "parentTag": "Authorization with Payer Authentication" + }, + "example20": { + "summary": "Authorization with DM(Accept) + PA Enroll", + "sample-name": "Authorization with DM(Accept) + PA Enroll", + "value": { + "clientReferenceInformation": { + "code": "cbys_test" + }, + "processingInformation": { + "actionList": [ + "CONSUMER_AUTHENTICATION" + ] + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "phoneNumber": "4158880000", + "email": "accept@cybersource.com" + }, + "amountDetails": { + "totalAmount": "1.00", + "currency": "usd" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "340000000001007", + "securityCode": "1234", + "expirationMonth": "12" + } + } + }, + "parentTag": "Authorization with Payer Authentication" + }, + "example21": { + "summary": "Authorization with DM(Review) + PA Enroll", + "sample-name": "Authorization with DM(Review) + PA Enroll", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "CONSUMER_AUTHENTICATION" + ] + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "372425119311008", + "securityCode": "1234", + "expirationMonth": "12" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "review@domain.com", + "phoneNumber": "4158880000" + } + } + }, + "parentTag": "Authorization with Payer Authentication" + }, + "example22": { + "summary": "Authorization with DM(Reject) + PA Enroll", + "sample-name": "Authorization with DM(Reject) + PA Enroll", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "actionList": [ + "CONSUMER_AUTHENTICATION" + ] + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "372425119311008", + "securityCode": "1234", + "expirationMonth": "12" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "reject@domain.com", + "phoneNumber": "4158880000" + } + } + }, + "parentTag": "Authorization with Payer Authentication" + }, + "example23": { + "summary": "Payment Network Tokenization", + "sample-name": "Process Payment with Network Tokenization", + "value": { + "clientReferenceInformation": { + "code": "TC_123122" + }, + "processingInformation": { + "commerceIndicator": "vbv" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + } + }, + "paymentInformation": { + "tokenizedCard": { + "expirationYear": "2031", + "number": "4111111111111111", + "expirationMonth": "12", + "transactionType": "1" + } + }, + "consumerAuthenticationInformation": { + "cavv": "AAABCSIIAAAAAAACcwgAEMCoNh+=", + "xid": "T1Y0OVcxMVJJdkI0WFlBcXptUzE=" + } + } + }, + "example24": { + "summary": "Digital Payment - GooglePay", + "sample-name": "Process Payment with GooglePay", + "value": { + "clientReferenceInformation": { + "code": "TC_1231223" + }, + "processingInformation": { + "paymentSolution": "012" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "John", + "lastName": "Deo", + "phoneNumber": "6504327113", + "address1": "901 Metro Center Blvd", + "postalCode": "94404", + "locality": "Foster City", + "administrativeArea": "CA", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "20", + "currency": "USD" + } + }, + "paymentInformation": { + "tokenizedCard": { + "expirationYear": "2020", + "number": "4111111111111111", + "expirationMonth": "12", + "transactionType": "1", + "cryptogram": "EHuWW9PiBkWvqE5juRwDzAUFBAk=" + } + } + } + }, + "example25": { + "summary": "Digital Payments - ApplePay", + "sample-name": "Process Payment with ApplePay", + "value": { + "clientReferenceInformation": { + "code": "TC_1231223" + }, + "processingInformation": { + "paymentSolution": "001" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "John", + "lastName": "Deo", + "phoneNumber": "6504327113", + "address1": "901 Metro Center Blvd", + "postalCode": "94404", + "locality": "Foster City", + "administrativeArea": "CA", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10", + "currency": "USD" + } + }, + "paymentInformation": { + "tokenizedCard": { + "expirationYear": "2031", + "number": "4111111111111111", + "expirationMonth": "12", + "transactionType": "1", + "cryptogram": "AceY+igABPs3jdwNaDg3MAACAAA=" + } + } + } + }, + "example26": { + "summary": "Zero Dollar Authorization", + "sample-name": "Process Payment for Zero Dollar Authorization", + "value": { + "clientReferenceInformation": { + "code": "1234567890" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": 0, + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "5555555555554444", + "securityCode": "123", + "expirationMonth": "12" + } + } + } + }, + "example27": { + "summary": "Level II Data", + "sample-name": "Process Payment with Level II Data", + "value": { + "clientReferenceInformation": { + "code": "TC50171_12" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "invoiceDetails": { + "purchaseOrderNumber": "LevelII Auth Po" + }, + "amountDetails": { + "totalAmount": "112.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12", + "type": "001" + } + } + } + }, + "example28": { + "summary": "Level III Data", + "sample-name": "Process Payment with Level III Data", + "value": { + "clientReferenceInformation": { + "code": "TC50171_14" + }, + "processingInformation": { + "purchaseLevel": "3" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "invoiceDetails": { + "purchaseOrderNumber": "LevelIII Auth Po" + }, + "lineItems": [ + { + "discountApplied": "false", + "quantity": "10", + "unitPrice": "10.00", + "totalAmount": "100", + "productCode": "default", + "amountIncludesTax": "false" + } + ], + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12", + "type": "001" + } + } + } + }, + "example29": { + "summary": "Partial Authorization", + "sample-name": "Process Payment with Partial Authorization", + "value": { + "clientReferenceInformation": { + "code": "1234567890" + }, + "pointOfSaleInformation": { + "cardPresent": "true", + "catLevel": "6", + "emv": { + "fallbackCondition": "1", + "fallback": "false" + }, + "terminalCapability": "4" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "7012.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12" + } + } + } + }, + "example30": { + "summary": "Electronic Check Debits", + "sample-name": "Process Payment ECheck Debits", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "paymentInformation": { + "paymentType": { + "name": "CHECK" + }, + "bank": { + "account": { + "type": "C", + "number": "4100" + }, + "routingNumber": "071923284" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com" + } + } + }, + "parentTag": "Electronic Check(eCheck) and ServiceFees" + }, + "example31": { + "summary": "Electronic Check Debits with Legacy Token", + "sample-name": "Process Payment ECheck Debits with Legacy Token", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "paymentInformation": { + "paymentType": { + "name": "CHECK" + }, + "legacyToken": { + "id": "7500BB199B4270EFE05340588D0AFCAD" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com" + } + } + }, + "parentTag": "Electronic Check(eCheck) and ServiceFees" + }, + "example32": { + "summary": "Service Fees with Credit Card transaction", + "sample-name": "Process Payment Service Fees with Credit Card transaction", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "2325.00", + "currency": "USD", + "serviceFeeAmount": "30.0" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "securityCode": "123", + "expirationMonth": "12" + } + }, + "merchantInformation": { + "serviceFeeDescriptor": { + "name": "Vacations Service Fee", + "contact": "8009999999", + "state": "CA" + } + } + }, + "parentTag": "Electronic Check(eCheck) and ServiceFees" + }, + "example33": { + "summary": "Authorization Using Swiped Track Data", + "sample-name": "Authorization Using Swiped Track Data", + "value": { + "clientReferenceInformation": { + "code": "ABC123", + "partner": { + "thirdPartyCertificationNumber": "123456789012" + } + }, + "processingInformation": { + "commerceIndicator": "retail", + "authorizationOptions": { + "partialAuthIndicator": "true" + } + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?", + "cardPresent": "Y", + "entryMode": "swiped", + "terminalCapability": "2" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example34": { + "summary": "Sale Using Swiped Track Data with Visa Platform Connect", + "sample-name": "Sale Using Swiped Track Data with Visa Platform Connect", + "value": { + "clientReferenceInformation": { + "code": "123456" + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": "true", + "authorizationOptions": { + "partialAuthIndicator": "true" + } + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", + "cardPresent": "Y", + "entryMode": "swiped", + "terminalCapability": "2" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example35": { + "summary": "Sale Using Keyed Data with Visa Platform Connect", + "sample-name": "Sale Using Keyed Data with Visa Platform Connect", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": true, + "authorizationOptions": { + "partialAuthIndicator": true, + "ignoreAvsResult": true, + "ignoreCvResult": true + } + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "entryMode": "keyed", + "terminalCapability": 2 + }, + "paymentInformation": { + "card": { + "number": 4111111111111111, + "securityCode": 123, + "expirationMonth": 12, + "expirationYear": 2031 + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example36": { + "summary": "Sale Using Keyed Data with Balance Inquiry", + "sample-name": "Sale Using Keyed Data with Balance Inquiry", + "value": { + "clientReferenceInformation": { + "code": 123456, + "partner": { + "thirdPartyCertificationNumber": 123456789012 + } + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": true, + "authorizationOptions": { + "partialAuthIndicator": true, + "ignoreAvsResult": true, + "ignoreCvResult": true + } + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "entryMode": "keyed", + "terminalCapability": 2 + }, + "paymentInformation": { + "card": { + "number": 4111111111111111, + "securityCode": 123, + "expirationMonth": 12, + "expirationYear": 2031 + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example37": { + "summary": "Sale Using EMV Technology with Contact Read with Visa Platform Connect", + "sample-name": "Sale Using EMV Technology with Contact Read with Visa Platform Connect", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail", + "authorizationOptions": { + "partialAuthIndicator": true + } + }, + "pointOfSaleInformation": { + "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", + "cardPresent": "Y", + "catLevel": 1, + "emv": { + "cardSequenceNumber": 1, + "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" + }, + "entryMode": "contact", + "terminalCapability": 4 + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example38": { + "summary": "Sale Using EMV Technology with Contactless Read with Visa Platform Connect", + "sample-name": "Sale Using EMV Technology with Contactless Read with Visa Platform Connect", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail", + "authorizationOptions": { + "partialAuthIndicator": true + } + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", + "cardPresent": "Y", + "catLevel": 2, + "entryMode": "contactless", + "emv": { + "cardSequenceNumber": 1, + "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" + }, + "terminalCapability": 5 + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example39": { + "summary": "Authorization Using Bluefin PCI P2PE with Visa Platform Connect", + "sample-name": "Authorization Using Bluefin PCI P2PE with Visa Platform Connect", + "value": { + "clientReferenceInformation": { + "code": "demomerchant" + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "catLevel": 1, + "entryMode": "keyed", + "terminalCapability": 2 + }, + "processingInformation": { + "commerceIndicator": "retail", + "authorizationOptions": { + "partialAuthIndicator": true, + "ignoreAvsResult": true, + "ignoreCvResult": true + } + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "Deo", + "address1": "201 S. Division St.", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "firstName": "John", + "phoneNumber": 999999999, + "district": "MI", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": 2050, + "expirationMonth": 12 + }, + "fluidData": { + "descriptor": "Ymx1ZWZpbg==", + "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example40": { + "summary": "Restaurant Authorization", + "sample-name": "Restaurant Authorization", + "value": { + "clientReferenceInformation": { + "code": "demomerchant", + "partner": { + "thirdPartyCertificationNumber": 123456789012 + } + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?", + "cardPresent": "Y", + "entryMode": "swiped", + "terminalCapability": 2 + }, + "processingInformation": { + "commerceIndicator": "retail", + "authorizationOptions": { + "partialAuthIndicator": true + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example41": { + "summary": "Sale Using EMV Technology with a Contactless", + "sample-name": "Sale Using EMV Technology with a Contactless", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", + "cardPresent": "Y", + "catLevel": 2, + "entryMode": "contactless", + "emv": { + "cardSequenceNumber": 999 + }, + "terminalCapability": 2 + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example42": { + "summary": "Sale Using EMV Technology with Contact Read (One) for Card Present Enabled Acquirer", + "sample-name": "Sale Using EMV Technology with Contact Read (One) for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "pointOfSaleInformation": { + "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", + "cardPresent": "Y", + "catLevel": 1, + "emv": { + "cardSequenceNumber": 0 + }, + "entryMode": "contact", + "terminalCapability": 1 + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example43": { + "summary": "Swiped", + "sample-name": "Swiped", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", + "cardPresent": "Y", + "entryMode": "swiped", + "terminalCapability": 2 + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example44": { + "summary": "Sale Using Swiped Track Data for Card Present Enabled Acquirer", + "sample-name": "Sale Using Swiped Track Data for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": true + }, + "pointOfSaleInformation": { + "trackData": "%B38000000000006^TEST/CYBS ^2412121019761100 00868000000?;38000000000006=20121210197611868000?", + "cardPresent": "Y", + "entryMode": "swiped", + "terminalCapability": 2 + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example45": { + "summary": "Sale Using Keyed Data for Card Present Enabled Acquirer", + "sample-name": "Sale Using Keyed Data for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": 123456 + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": true + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "entryMode": "keyed", + "terminalCapability": 2 + }, + "paymentInformation": { + "card": { + "number": 4111111111111111, + "securityCode": 123, + "expirationMonth": 12, + "expirationYear": 2031 + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example46": { + "summary": "American Express Direct - EMV with Contact Read", + "sample-name": "American Express Direct - EMV with Contact Read", + "value": { + "clientReferenceInformation": { + "code": 123456, + "partner": { + "originalTransactionId": "510be4aef90711e6acbc7d88388d803d" + } + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "pointOfSaleInformation": { + "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", + "cardPresent": "Y", + "catLevel": 1, + "emv": { + "cardSequenceNumber": 1, + "cardholderVerificationMethodUsed": 2, + "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" + }, + "entryMode": "contact", + "terminalCapability": 4, + "encryptedKeySerialNumber": "01043191", + "cardholderVerificationMethod": [ + "pin", + "signature" + ], + "terminalInputCapability": [ + "contact", + "contactless", + "keyed", + "swiped" + ], + "terminalCardCaptureCapability": 1, + "deviceId": "123lkjdIOBK34981slviLI39bj" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example47": { + "summary": "Sale Using EMV Technology with Contact Read (Two) for Card Present Enabled Acquirer", + "sample-name": "Sale Using EMV Technology with Contact Read (Two) for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": 123456, + "partner": { + "originalTransactionId": "510be4aef90711e6acbc7d88388d803d" + } + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": true + }, + "pointOfSaleInformation": { + "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", + "cardPresent": "Y", + "catLevel": 1, + "emv": { + "cardSequenceNumber": 1, + "cardholderVerificationMethodUsed": 2, + "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" + }, + "entryMode": "contact", + "terminalCapability": 4, + "encryptedKeySerialNumber": "01043191", + "cardholderVerificationMethod": [ + "pin", + "signature" + ], + "terminalInputCapability": [ + "contact", + "contactless", + "keyed", + "swiped" + ], + "terminalCardCaptureCapability": 1, + "deviceId": "123lkjdIOBK34981slviLI39bj" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example48": { + "summary": "Sale Using EMV Technology with Contactless Read for Card Present Enabled Acquirer", + "sample-name": "Sale Using EMV Technology with Contactless Read for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": 123456, + "partner": { + "originalTransactionId": "510be4aef90711e6acbc7d88388d803d" + } + }, + "processingInformation": { + "commerceIndicator": "retail", + "capture": true + }, + "pointOfSaleInformation": { + "trackData": "%B4111111111111111^TEST/CYBS ^2412121019761100 00868000000?;", + "cardPresent": "Y", + "catLevel": 1, + "emv": { + "cardSequenceNumber": 1, + "cardholderVerificationMethodUsed": 2, + "tags": "9F3303204000950500000000009F3704518823719F100706011103A000009F26081E1756ED0E2134E29F36020015820200009C01009F1A0208409A030006219F02060000000020005F2A0208409F0306000000000000" + }, + "entryMode": "contactless", + "terminalCapability": 5, + "encryptedKeySerialNumber": "01043191", + "cardholderVerificationMethod": [ + "pin", + "signature" + ], + "terminalInputCapability": [ + "contact", + "contactless", + "keyed", + "swiped" + ], + "terminalCardCaptureCapability": 1, + "deviceId": "123lkjdIOBK34981slviLI39bj" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example49": { + "summary": "Authorization Using Bluefin PCI P2PE for Card Present Enabled Acquirer", + "sample-name": "Authorization Using Bluefin PCI P2PE for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": "demomerchant" + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "catLevel": 1, + "entryMode": "keyed", + "terminalCapability": 2 + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "Deo", + "address1": "201 S. Division St.", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "firstName": "John", + "phoneNumber": 999999999, + "district": "MI", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": 2050, + "expirationMonth": 12 + }, + "fluidData": { + "descriptor": "Ymx1ZWZpbg==", + "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + }, + "example50": { + "summary": "Authorization with Instrument Identifier Token Id", + "sample-name": "Authorization with Instrument Identifier Token Id", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "commerceIndicator": "internet" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "John", + "lastName": "Deo", + "phoneNumber": "9321499232", + "address1": "900 Metro Center Blvd", + "postalCode": "48104-2201", + "locality": "Foster City", + "administrativeArea": "CA", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "200", + "currency": "usd" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "expirationMonth": "03", + "type": "001" + }, + "instrumentIdentifier": { + "id": "7010000000016241111" + } + } + }, + "parentTag": "Authorization with Tokenization" + }, + "example51": { + "summary": "Authorization with Legacy Token", + "sample-name": "Authorization with Legacy Token", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "paymentInformation": { + "legacyToken": { + "id": "7500BB199B4270EFE05340588D0AFCAD" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "22", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + }, + "parentTag": "Authorization with Tokenization" + } + } + } + }, + "/pts/v2/payments/{id}": { + "patch": { + "summary": "Increment an Authorization", + "description": "Use this service to authorize additional charges in a lodging or autorental transaction. Include the ID returned from the original authorization in the PATCH request to add additional charges to that authorization.\n", + "tags": [ + "payments" + ], + "operationId": "incrementAuth", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The ID returned from the original authorization request.", + "required": true, + "type": "string" + }, + { + "name": "incrementAuthRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "storedCredentialUsed": { + "type": "boolean", + "description": "Indicates to an issuing bank whether a merchant-initiated transaction came from a card that was already stored on file.\n\nPossible values:\n- **true** means the merchant-initiated transaction came from a card that was already stored on file.\n- **false** means the merchant-initiated transaction came from a card that was not stored on file.\n" + } + } + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "additionalAmount": { + "type": "string", + "maxLength": 19, + "description": "Additional charges that have to be authorized against a lodging or auto-rental order.\nThis value cannot be negative. You can include a decimal point (.), but no other special characters.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "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" + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "maxLength": 2, + "description": "Duration for which the vehicle was rented or lodge/hotel was booked.\n" + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "storedCredentialUsed": true + } + } + }, + "orderInformation": { + "amountDetails": { + "additionalAmount": "22.49", + "currency": "USD" + } + }, + "merchantInformation": { + "transactionLocalDateTime": 20191002080000 + }, + "travelInformation": { + "duration": "4" + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2IncrementalAuthorizationPatch201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - AUTHORIZED\n - AUTHORIZED_PENDING_REVIEW\n - DECLINED\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - AVS_FAILED\n - CONTACT_PROCESSOR\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - INSUFFICIENT_FUND\n - STOLEN_LOST_CARD\n - ISSUER_UNAVAILABLE\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - EXCEEDS_CREDIT_LIMIT\n - INVALID_CVN\n - BLACKLISTED_CUSTOMER\n - SUSPENDED_ACCOUNT\n - PAYMENT_REFUSED\n - CV_FAILED\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - INVALID_MERCHANT_CONFIGURATION\n - DECISION_PROFILE_REJECT\n - SCORE_EXCEEDS_THRESHOLD\n - CONSUMER_AUTHENTICATION_REQUIRED\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\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" + } + } + } + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + }, + "transactionId": { + "type": "string", + "maxLength": 50, + "description": "Network transaction identifier (TID). You can use this value to identify a specific transaction when you are\ndiscussing the transaction with your processor. Not all processors provide this value.\n\nReturned by the authorization service.\n\n#### PIN debit\nTransaction identifier generated by the processor.\n\nReturned by PIN debit credit.\n\n#### GPX\nProcessor transaction ID.\n\n#### Cielo\nFor Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.\n\n#### Comercio Latino\nFor Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.\n\n#### CyberSource through VisaNet and GPN\nFor details about this value for CyberSource through VisaNet and GPN, see \"Network Transaction Identifiers\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Moneris\nThis value identifies the transaction on a host system. It contains the following information:\n- Terminal used to process the transaction\n- Shift during which the transaction took place\n- Batch number\n- Transaction number within the batch\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\n**Example** For the value\n66012345001069003:\n- Terminal ID = 66012345\n- Shift number = 001\n- Batch number = 069\n- Transaction number = 003\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "systemTraceAuditNumber": { + "type": "string", + "maxLength": 6, + "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" + }, + "responseDetails": { + "type": "string", + "maxLength": 255, + "description": "This field might contain information about a decline. This field is supported only for **CyberSource through\nVisaNet**.\n" + }, + "merchantAdvice": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 2, + "description": "Reason the recurring payment transaction was declined. For some processors, this field is used only for\nMastercard. For other processors, this field is used for Visa and Mastercard. And for other processors, this\nfield is not implemented.\n\nPossible values:\n\n - `00`: Response not provided.\n - `01`: New account information is available. Obtain the new information.\n - `02`: Try again later.\n - `03`: Do not try again. Obtain another type of payment from the customer.\n - `04`: Problem with a token or a partial shipment indicator.\n - `21`: Recurring payment cancellation service.\n - `99`: An unknown value was returned from the processor.\n\nFor processor-specific information, see the `auth_merchant_advice_code` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 4, + "description": "Raw merchant advice code sent directly from the processor. This field is used only for Mastercard.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR7\n- Position: 96-99\n- Field: Response Data-Merchant Advice Code\n\n\nFor processor-specific information, see the `auth_merchant_advice_code_raw` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "nameMatch": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThe field contains will contain the Account Name Request Result for zero amount Authorization request. Valid values are:\n\n00 = Name Match Performed\n01 = Name Match not Performed\n02 = Name Match not supported\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "accountFeatures": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 7, + "description": "#### GPX\nMastercard product ID associated with the primary account number (PAN).\nReturned by authorization service.\n\n#### CyberSource through VisaNet\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the [Visa\nRequest & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### GPN\nVisa or Mastercard product ID that is associated with the primary account number (PAN).\nFor descriptions of the Visa product IDs, see the Product ID table on the\n[Visa Request & Response Codes web page.](https://developer.visa.com/guides/request_response_codes)\n\nData Length: String (3)\n\n#### Worldpay VAP\n**Important** Before using this field on Worldpay VAP,\nyou must contact CyberSource Customer Support to have\nyour account configured for this feature.\n\nType of card used in the transaction. The only possible value is:\n- `PREPAID`: Prepaid Card\n\nData Length: String (7)\n\n#### RBS WorldPay Atlanta\nType of card used in the transaction. Possible values:\n- `B`: Business Card\n- `O`: Noncommercial Card\n- `R`: Corporate Card\n- `S`: Purchase Card\n- `Blank`: Purchase card not supported\n\nData Length: String (1)\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "totalAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount you requested for the payment or capture.\n\nThis value is returned for partial authorizations.\nThis field is also returned on incremental authorizations will contain the aggregated amount from the original authorizations and all the incremental authorizations.\n" + }, + "authorizedAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount that was authorized.\n\nReturned by authorization service.\n\n#### PIN debit\nAmount of the purchase.\n\nReturned by PIN debit purchase.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in Merchant Descriptors Using the SCMP API.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/payments/4963015972176007901546", + "method": "GET" + } + }, + "id": "4963015972176007901546", + "submitTimeUtc": "2017-06-01T071957Z", + "status": "200", + "reconciliationId": "39570726X3E1LBQR", + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "authorizedAmount": "22.49", + "currency": "USD" + } + }, + "processorInformation": { + "approvalCode": "888888", + "responseCode": "100" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "ptsV2IncrementalAuthorizationPatch400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - CARD_TYPE_NOT_ACCEPTED\n - INVALID_MERCHANT_CONFIGURATION\n - PROCESSOR_UNAVAILABLE\n - INVALID_PAYMENT_ID\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2IncrementalAuthorizationPatch502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Incremental Authorization", + "sample-name": "Incremental Authorization", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "authorizationOptions": { + "initiator": { + "storedCredentialUsed": true + } + } + }, + "orderInformation": { + "amountDetails": { + "additionalAmount": "22.49", + "currency": "USD" + } + }, + "merchantInformation": { + "transactionLocalDateTime": 20191002080000 + }, + "travelInformation": { + "duration": "4" + } + } + } + } + } + }, + "/pts/v2/payments/{id}/reversals": { + "post": { + "summary": "Process an Authorization Reversal", + "description": "Include the payment ID in the POST request to reverse the payment amount.", + "tags": [ + "reversal" + ], + "operationId": "authReversal", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The payment ID returned from a previous payment request.", + "required": true, + "type": "string" + }, + { + "name": "authReversalRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "reversalInformation": { + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "reason": { + "type": "string", + "description": "Reason for the authorization reversal. Possible value:\n\n - `34`: Suspected fraud\n\nThis field is ignored for processors that do not support this value.\n\nReturned by authorization reversal.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "issuer": { + "type": "object", + "properties": { + "discretionaryData": { + "type": "string", + "maxLength": 255, + "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "TC50171_3", + "transactionId": "code" + }, + "reversalInformation": { + "reason": "testing", + "amountDetails": { + "totalAmount": "102.21" + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2PaymentsReversalsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - REVERSED\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "reversalAmountDetails": { + "type": "object", + "properties": { + "reversedAmount": { + "type": "string", + "maxLength": 15, + "description": "Total reversed amount.\n\nReturned by authorization reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount of the original transaction.\n\nReturned by authorization reversal and void.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "transactionId": { + "type": "string", + "maxLength": 18, + "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "responseCategoryCode": { + "type": "string", + "maxLength": 36, + "description": "Processor-defined response category code. The associated detail error code is in the `processorInformation.responseCode` or `issuerInformation.responseCode`\nfield of the service you requested.\n\nThis field is supported only for:\n\n - Japanese issuers\n - Domestic transactions in Japan\n - Comercio Latino\u2014processor transaction ID required for troubleshooting\n\n#### Maximum length for processors\n\n - Comercio Latino: 36\n - All other processors: 3\n" + }, + "forwardedAcquirerCode": { + "type": "string", + "maxLength": 32, + "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" + }, + "masterCardServiceCode": { + "type": "string", + "maxLength": 2, + "description": "Mastercard service that was used for the transaction. Mastercard provides this value to CyberSource.\n\nPossible value:\n - 53: Mastercard card-on-file token service\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 133-134\n- Field: Mastercard Merchant on-behalf service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" + }, + "masterCardServiceReplyCode": { + "type": "string", + "maxLength": 1, + "description": "Result of the Mastercard card-on-file token service. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `C`: Service completed successfully.\n - `F`: One of the following:\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 81 for an authorization or\n authorization reversal.\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 01 for a tokenized request.\n - Token requestor ID is missing or formatted incorrectly.\n - `I`: One of the following:\n - Invalid token requestor ID.\n - Suspended or deactivated token.\n - Invalid token (not in mapping table).\n - `T`: Invalid combination of token requestor ID and token.\n - `U`: Expired token.\n - `W`: Primary account number (PAN) listed in electronic warning bulletin.\n\n**Note** This field is returned only for **CyberSource through VisaNet**.\n" + } + } + }, + "issuerInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 6, + "description": "Additional authorization code that must be printed on the receipt when returned by the processor.\n\nThis value is generated by the processor and is returned only for a successful transaction.\n\nThis reply field is supported only for these processors:\n- FDC Nashville Global\n- SIX\n" + } + } + }, + "authorizationInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "The authorization code returned by the processor." + }, + "reasonCode": { + "type": "string", + "maxLength": 50, + "description": "Reply flag for the original transaction." + }, + "reversalSubmitted": { + "type": "string", + "maxLength": 1, + "description": "Flag indicating whether a full authorization reversal was successfully submitted.\n\nPossible values:\n- Y: The authorization reversal was successfully submitted.\n- N: The authorization reversal was not successfully submitted. You must send a credit request for a refund.\n\nThis field is supported only for **FDC Nashville Global**.\n" + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/reversals/4963015523026180001545", + "method": "GET" + } + }, + "id": "4963015523026180001545", + "submitTimeUtc": "2017-06-01T071912Z", + "status": "200", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "processorInformation": { + "responseCode": "100" + }, + "reversalAmountDetails": { + "reversedAmount": "102.21", + "currency": "USD" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "ptsV2PaymentsReversalsPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - AUTH_ALREADY_REVERSED\n - TRANSACTION_ALREADY_SETTLED\n - INVALID_AMOUNT\n - MISSING_AUTH\n - TRANSACTION_ALREADY_REVERSED_OR_SETTLED\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2PaymentsReversalsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Process an Authorization Reversal", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "reversalInformation": { + "reason": "testing", + "amountDetails": { + "totalAmount": "102.21" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + }, + "example1": { + "summary": "Service Fees Authorization Reversal", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "reversalInformation": { + "reason": "34", + "amountDetails": { + "totalAmount": "2325.00", + "serviceFeeAmount": "30.0" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example14" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/reversals/": { + "post": { + "summary": "Timeout Reversal", + "description": "This is to reverse a previous payment that merchant does not receive a reply(Mostly due to Timeout). To use this feature/API, make sure to pass unique value to field - clientReferenceInformation -> transactionId in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call and use same transactionId in this API request payload to reverse the payment.", + "tags": [ + "reversal" + ], + "operationId": "mitReversal", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html", + "isClientSideApi": true + }, + "parameters": [ + { + "name": "mitReversalRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "reversalInformation": { + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "reason": { + "type": "string", + "description": "Reason for the authorization reversal. Possible value:\n\n - `34`: Suspected fraud\n\nThis field is ignored for processors that do not support this value.\n\nReturned by authorization reversal.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "issuer": { + "type": "object", + "properties": { + "discretionaryData": { + "type": "string", + "maxLength": 255, + "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "transactionId": "" + }, + "reversalInformation": { + "reason": "testing", + "amountDetails": { + "totalAmount": "102.21" + } + } + } + } + } + ], + "x-example": { + "example0": { + "summary": "Timeout Reversal", + "value": { + "clientReferenceInformation": { + "transactionId": "" + }, + "reversalInformation": { + "reason": "testing", + "amountDetails": { + "totalAmount": "102.21" + } + } + } + } + }, + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2ReversalsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - REVERSED\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "reversalAmountDetails": { + "type": "object", + "properties": { + "reversedAmount": { + "type": "string", + "maxLength": 15, + "description": "Total reversed amount.\n\nReturned by authorization reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount of the original transaction.\n\nReturned by authorization reversal and void.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "transactionId": { + "type": "string", + "maxLength": 18, + "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "responseCategoryCode": { + "type": "string", + "maxLength": 36, + "description": "Processor-defined response category code. The associated detail error code is in the `processorInformation.responseCode` or `issuerInformation.responseCode`\nfield of the service you requested.\n\nThis field is supported only for:\n\n - Japanese issuers\n - Domestic transactions in Japan\n - Comercio Latino\u2014processor transaction ID required for troubleshooting\n\n#### Maximum length for processors\n\n - Comercio Latino: 36\n - All other processors: 3\n" + }, + "forwardedAcquirerCode": { + "type": "string", + "maxLength": 32, + "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" + }, + "masterCardServiceCode": { + "type": "string", + "maxLength": 2, + "description": "Mastercard service that was used for the transaction. Mastercard provides this value to CyberSource.\n\nPossible value:\n - 53: Mastercard card-on-file token service\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 133-134\n- Field: Mastercard Merchant on-behalf service.\n**Note** This field is returned only for CyberSource through VisaNet.\n" + }, + "masterCardServiceReplyCode": { + "type": "string", + "maxLength": 1, + "description": "Result of the Mastercard card-on-file token service. Mastercard provides this value to CyberSource.\n\nPossible values:\n\n - `C`: Service completed successfully.\n - `F`: One of the following:\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 81 for an authorization or\n authorization reversal.\n - Incorrect Mastercard POS entry mode. The Mastercard POS entry mode should be 01 for a tokenized request.\n - Token requestor ID is missing or formatted incorrectly.\n - `I`: One of the following:\n - Invalid token requestor ID.\n - Suspended or deactivated token.\n - Invalid token (not in mapping table).\n - `T`: Invalid combination of token requestor ID and token.\n - `U`: Expired token.\n - `W`: Primary account number (PAN) listed in electronic warning bulletin.\n\n**Note** This field is returned only for **CyberSource through VisaNet**.\n" + } + } + }, + "issuerInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 6, + "description": "Additional authorization code that must be printed on the receipt when returned by the processor.\n\nThis value is generated by the processor and is returned only for a successful transaction.\n\nThis reply field is supported only for these processors:\n- FDC Nashville Global\n- SIX\n" + } + } + }, + "authorizationInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "The authorization code returned by the processor." + }, + "reasonCode": { + "type": "string", + "maxLength": 50, + "description": "Reply flag for the original transaction." + }, + "reversalSubmitted": { + "type": "string", + "maxLength": 1, + "description": "Flag indicating whether a full authorization reversal was successfully submitted.\n\nPossible values:\n- Y: The authorization reversal was successfully submitted.\n- N: The authorization reversal was not successfully submitted. You must send a credit request for a refund.\n\nThis field is supported only for **FDC Nashville Global**.\n" + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/reversals/4963015523026180001545", + "method": "GET" + } + }, + "id": "4963015523026180001545", + "submitTimeUtc": "2017-06-01T071912Z", + "status": "200", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "processorInformation": { + "responseCode": "100" + }, + "reversalAmountDetails": { + "reversedAmount": "102.21", + "currency": "USD" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2ReversalsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - AUTH_ALREADY_REVERSED\n - TRANSACTION_ALREADY_SETTLED\n - INVALID_AMOUNT\n - MISSING_AUTH\n - TRANSACTION_ALREADY_REVERSED_OR_SETTLED\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2ReversalsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + } + } + } + } + } + } + }, + "/pts/v2/payments/{id}/captures": { + "post": { + "summary": "Capture a Payment", + "description": "Include the payment ID in the POST request to capture the payment amount.", + "tags": [ + "capture" + ], + "operationId": "capturePayment", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "capturePaymentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "purchaseLevel": { + "type": "string", + "maxLength": 1, + "description": "Set this field to 3 to indicate that the request includes Level III data." + }, + "industryDataType": { + "type": "string", + "maxLength": 20, + "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, + "issuer": { + "type": "object", + "properties": { + "discretionaryData": { + "type": "string", + "maxLength": 255, + "description": "Data defined by the issuer.\n\nThe value for this reply field will probably be the same as the value that you submitted in the authorization request, but it is possible for the processor, issuer, or acquirer to modify the value.\n\nThis field is supported only for Visa transactions on **CyberSource through VisaNet**.\n\nFor details, see `issuer_additional_data` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "authorizationOptions": { + "type": "object", + "properties": { + "authType": { + "type": "string", + "maxLength": 15, + "description": "Authorization type. Possible values:\n\n - `AUTOCAPTURE`: automatic capture.\n - `STANDARDCAPTURE`: standard capture.\n - `VERBAL`: forced capture. Include it in the payment request for a forced capture. Include it in the capture request for a verbal payment.\n\n#### Asia, Middle East, and Africa Gateway; Cielo; Comercio Latino; and CyberSource Latin American Processing\nSet this field to `AUTOCAPTURE` and include it in a bundled request to indicate that you are requesting an automatic capture. If your account is configured to enable automatic captures, set this field to `STANDARDCAPTURE` and include it in a standard authorization or bundled request to indicate that you are overriding an automatic capture. For more information, see the `auth_type` field description in [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Forced Capture\nSet this field to `VERBAL` and include it in the authorization request to indicate that you are performing a forced capture; therefore, you receive the authorization code outside the CyberSource system.\n\n#### Verbal Authorization\nSet this field to `VERBAL` and include it in the capture request to indicate that the request is for a verbal authorization. For more information, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" + }, + "verbalAuthCode": { + "type": "string", + "maxLength": 7, + "description": "Authorization code.\n\n#### Forced Capture\nUse this field to send the authorization code you received from a payment that you authorized\noutside the CyberSource system.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit purchase.\n\n#### Verbal Authorization\nUse this field in CAPTURE API to send the verbally received authorization code.\n\nFor processor-specific information, see the `auth_code` field description in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" + }, + "verbalAuthTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Transaction ID (TID).\n\n#### FDMS South\nThis field is required for verbal authorizations and forced captures with the American Express card type to comply\nwith the CAPN requirements:\n- Forced capture: Obtain the value for this field from the authorization response.\n- Verbal authorization: You cannot obtain a value for this field so CyberSource uses the default value of `000000000000000` (15\nzeros).\n" + } + } + }, + "captureOptions": { + "type": "object", + "properties": { + "captureSequenceNumber": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Capture number when requesting multiple partial captures for one authorization.\nUsed along with `totalCaptureCount` to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber_ = 2`, and\n - `totalCaptureCount = 5`\n" + }, + "totalCaptureCount": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Total number of captures when requesting multiple partial captures for one payment.\nUsed along with `captureSequenceNumber` field to track which capture is being processed.\n\nFor example, the second of five captures would be passed to CyberSource as:\n - `captureSequenceNumber = 2`, and\n - `totalCaptureCount = 5`\n" + } + } + }, + "loanOptions": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 20, + "description": "Type of loan based on an agreement between you and the issuer.\nExamples: AGROCUSTEIO, AGRO-INVEST, BNDES-Type1, CBN, FINAME.\nThis field is supported only for these kinds of payments:\n- BNDES transactions on CyberSource through VisaNet.\n- Installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nSee \"\"Installment Payments on CyberSource through VisaNet,\"\" in the SCMP/SO guide\n\nFor BNDES transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR2, Position: 27-46, Field: Loan Type\n\nFor installment payments with Mastercard in Brazil, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR4, Position: 5-24,Field: Financing Type\n" + }, + "assetType": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a loan is for a recoverable item or a non-recoverable item.\nPossible values:\n- `N`: non-recoverable item\n- `R`: recoverable item\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n Record: CP07 TCR2, Position: 26, Field: Asset Indicator\n" + } + } + }, + "payByPointsIndicator": { + "type": "boolean", + "description": "Flag that indicates if the transaction is pay by points transaction\ntrue: Transaction uses loyalty points\nfalse: Transaction does not use loyalty points\nDefault: false\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "card": { + "type": "object", + "properties": { + "sourceAccountType": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" + }, + "sourceAccountTypeDetails": { + "type": "string", + "maxLength": 4, + "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n" + }, + "nationalTaxIncluded": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" + }, + "taxAppliedLevel": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 3, + "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" + }, + "freightAmount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "foreignAmount": { + "type": "string", + "maxLength": 15, + "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "description": "Set this field to the converted amount that was returned by the DCC provider.\n" + }, + "exchangeRate": { + "type": "string", + "maxLength": 13, + "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" + }, + "exchangeRateTimeStamp": { + "type": "string", + "maxLength": 14, + "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" + }, + "amexAdditionalAmounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "amount": { + "type": "string", + "maxLength": 12, + "description": "Additional amount. This field is supported only for **American Express Direct**.\n" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + }, + "originalCurrency": { + "type": "string", + "maxLength": 15, + "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "company": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "address1": { + "type": "string", + "maxLength": 40, + "description": "First line in the street address of the company purchasing the product." + }, + "address2": { + "type": "string", + "maxLength": 40, + "description": "Additional address information for the company purchasing the product." + }, + "locality": { + "type": "string", + "maxLength": 30, + "description": "City in the address of the company purchasing the product." + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + } + } + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "unitOfMeasure": { + "type": "string", + "maxLength": 12, + "description": "Unit of measure, or unit of measure code, for the item.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + }, + "taxRate": { + "type": "string", + "maxLength": 7, + "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" + }, + "taxStatusIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "amountIncludesTax": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "typeOfSupply": { + "type": "string", + "maxLength": 2, + "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 13, + "description": "Discount applied to the item." + }, + "discountApplied": { + "type": "boolean", + "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "discountRate": { + "type": "string", + "maxLength": 6, + "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 23, + "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "fulfillmentType": { + "type": "string", + "description": "Information about the product code used for the line item.\nPossible values:\n- `E`: The product code is `electronic_software`.\n- `P`: The product code is not `electronic_software`.\n\nFor details, see the `fulfillmentType` field description in [Business Center Reporting User Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/reporting_and_reconciliation/Reporting_User/html/)\n" + }, + "weight": { + "type": "string", + "maxLength": 9, + "description": "Weight of the item.\n\nFor details, see `weight_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "weightIdentifier": { + "type": "string", + "maxLength": 1, + "description": "Type of weight.\n\nPossible values:\n- B: Billed weight\n- N: Actual net weight\n\nFor details, see `weight_identifier` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "weightUnit": { + "type": "string", + "maxLength": 2, + "description": "Code that specifies the unit of measurement for the weight amount. For example, `OZ` specifies ounce and `LB` specifies pound. The possible values are defined by the ANSI Accredited Standards Committee (ASC).\n\nFor details, see `weight_unit_measurement` offer-level field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "referenceDataCode": { + "type": "string", + "maxLength": 2, + "description": "Code that identifies the value of the corresponding `orderInformation.lineItems[].referenceDataNumber` field.\n\nPossible values:\n- AN: Client-defined asset code\n- MG: Manufacturer's part number\n- PO: Purchase order number\n- SK: Supplier stock keeping unit number\n- UP: Universal product code\n- VC: Supplier catalog number\n- VP: Vendor part number\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n\nFor details, see `reference_data_#_code` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "referenceDataNumber": { + "type": "string", + "maxLength": 30, + "description": "Reference number.\n\nThe meaning of this value is identified by the value of the corresponding `referenceDataCode` field.\nSee Numbered Elements.\n\nThe maximum length for this field depends on the value of the corresponding `referenceDataCode` field:\n- When the code is `PO`, the maximum length for the reference number is 22.\n- When the code is `VC`, the maximum length for the reference number is 20.\n- For all other codes, the maximum length for the reference number is 30.\n\nThis field is a pass-through, which means that CyberSource does not verify the value or modify it in any way\nbefore sending it to the processor.\n" + }, + "productDescription": { + "type": "string", + "description": "Brief description of item." + }, + "giftCardCurrency": { + "type": "integer", + "maxLength": 3, + "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "shippingDestinationTypes": { + "type": "string", + "maxLength": 50, + "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" + }, + "gift": { + "type": "boolean", + "description": "This field is only used in DM service.\n\nDetermines whether to assign risk to the order if the billing and shipping addresses specify different cities,\nstates, or countries. This field can contain one of the following values:\n- true: Orders are assigned only slight additional risk if billing and shipping addresses are different.\n- false: Orders are assigned higher additional risk if billing and shipping addresses are different.\n" + }, + "passenger": { + "type": "object", + "description": "Contains travel-related passenger details used by DM service only.", + "properties": { + "type": { + "type": "string", + "maxLength": 32, + "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" + }, + "status": { + "type": "string", + "maxLength": 32, + "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" + }, + "phone": { + "type": "string", + "maxLength": 15, + "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's first name." + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's last name." + }, + "id": { + "type": "string", + "maxLength": 40, + "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." + }, + "nationality": { + "type": "string", + "maxLength": 2, + "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." + } + } + } + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "purchaseOrderNumber": { + "type": "string", + "maxLength": 25, + "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseContactName": { + "type": "string", + "maxLength": 36, + "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + }, + "vatInvoiceReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 4, + "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "transactionAdviceAddendum": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "maxLength": 40, + "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" + } + } + } + } + } + }, + "shippingDetails": { + "type": "object", + "properties": { + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "userAgent": { + "type": "string", + "maxLength": 40, + "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "alternateName": { + "type": "string", + "maxLength": 13, + "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" + }, + "contact": { + "type": "string", + "maxLength": 14, + "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "administrativeArea": { + "type": "string", + "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "phone": { + "type": "string", + "maxLength": 13, + "description": "Merchant phone as contact information for CNP transactions\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + }, + "countryOfOrigin": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" + } + } + }, + "cardAcceptorReferenceNumber": { + "type": "string", + "maxLength": 25, + "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "categoryCode": { + "type": "integer", + "maximum": 9999, + "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "serviceFeeDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 22, + "description": "Name of the service provider that is collecting the service fee. The service provider name must consist of\n3, 7, or 12 characters followed by an asterisk (*). This value must also include the words \u201cService Fee.\u201d\n\nWhen you include more than one consecutive space, extra spaces are removed. Use one of the following formats\nfor this value:\n- <3-character name>*Service Fee\n- <7-character name>*Service Fee\n- <12-character name>*Service Fee\n\nWhen payments are made in installments, this value must also include installment information such as\n\u201c1 of 5\u201d or \u201c3 of 7.\u201d For installment payments, use one of the following formats for this value:\n- <3-character name>*Service Fee* of \n- <7-character name>*Service Fee* of \n- <12-character name>*Service Fee* of \n\nwhere is the payment number and is the total number of payments.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource\naccount.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" + }, + "contact": { + "type": "string", + "maxLength": 11, + "description": "Contact information for the service provider that is collecting the service fee. when you include more than one\nconsecutive space, extra spaces are removed.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" + }, + "state": { + "type": "string", + "maxLength": 20, + "description": "State or territory in which the service provider is located.\n\nWhen you do not include this value in your request, CyberSource uses the value that is in your CyberSource account.\n\nThis value might be displayed on the cardholder\u2019s statement.\n" + } + } + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "aggregatorInformation": { + "type": "object", + "properties": { + "aggregatorId": { + "type": "string", + "maxLength": 20, + "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "name": { + "type": "string", + "maxLength": 37, + "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "subMerchant": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 37, + "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" + }, + "address1": { + "type": "string", + "maxLength": 38, + "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "locality": { + "type": "string", + "maxLength": 21, + "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "email": { + "type": "string", + "maxLength": 40, + "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" + }, + "id": { + "type": "string", + "maxLength": 20, + "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + }, + "fallback": { + "type": "boolean", + "maxLength": 5, + "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" + } + } + }, + "amexCapnData": { + "type": "string", + "maxLength": 15, + "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "installmentInformation": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 12, + "description": "Amount for the current installment payment.\n\nThis field is supported only for CyberSource through VisaNet.\n\nFor details, see `installment_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "frequency": { + "type": "string", + "maxLength": 1, + "description": "Frequency of the installment payments. When you do not include this field in a request for a\nCrediario installment payment, CyberSource sends a space character to the processor.\n\nFor details, see `installment_frequency` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for CyberSource through VisaNet. Possible values:\n- `B`: Biweekly\n- `M`: Monthly\n- `W`: Weekly\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR9\n- Position: 41\n- Field: Installment Frequency\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "planType": { + "type": "string", + "maxLength": 1, + "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" + }, + "sequence": { + "type": "integer", + "maximum": 99, + "description": "Installment number when making payments in installments. Used along with `totalCount` to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as `sequence` = 2 and `totalCount` = 5.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nWhen you do not include this field in a request for a Crediario installment payment, CyberSource sends a value of 0 to the processor.\n\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 38-40\n- Field: Installment Payment Number\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 12, + "description": "Total amount of the loan that is being paid in installments. This field is supported only for CyberSource\nthrough VisaNet.\n\nFor details, see \"Installment Payments\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "totalCount": { + "type": "integer", + "maximum": 99, + "description": "Total number of installments when making payments in installments.\n\nFor details, see \"Installment Payments\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Chase Paymentech Solutions and FDC Compass\nThis field is optional because this value is required in the merchant descriptors.\n\nFor details, see \"Chase Paymentech Solutions Merchant Descriptors\" and \"FDC Compass Merchant Descriptors\" in the [Merchant Descriptors Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### American Express Direct, Cielo, and Comercio Latino\nThis value is the total number of installments you approved.\n\n#### CyberSource Latin American Processing in Brazil\nThis value is the total number of installments that you approved. The default is 1.\n\n#### All Other Processors\nThis value is used along with _sequence_ to track which payment is being processed.\n\nFor example, the second of 5 payments would be passed to CyberSource as _sequence_ = 2 and _totalCount_ = 5.\n\n#### CyberSource through VisaNet\nFor Crediario installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR9\n- Position: 23-25\n- Field: Number of Installments\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 7-8\n- Field: Number of Installments\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR1\n- Position: 7-8\n- Field: Number of Installments\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP01 TCR5\n- Position: 20-22\n- Field: Installment Total Count\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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n" + }, + "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.\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR9\n- Position: 42-47\n- Field: Date of First Installment\n" + }, + "firstInstallmentAmount": { + "type": "string", + "maxLength": 13, + "description": "Amount of the first installment payment. The issuer provides this value when the first installment payment is successful.\nThis field is supported for Mastercard installment payments on CyberSource through VisaNet in all countries except Brazil,Croatia, Georgia, and Greece.\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR5\n- Position: 23-34\n- Field: Amount of Each Installment\n" + }, + "invoiceData": { + "type": "string", + "maxLength": 20, + "description": "Invoice information that you want to provide to the issuer. This value is similar to a tracking number and is\nthe same for all installment payments for one purchase.\n\nThis field is supported only for installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR4\n- Position: 51-70\n- Field: Purchase Identification\n" + }, + "paymentType": { + "type": "string", + "maxLength": 1, + "description": "Payment plan for the installments.\n\nPossible values:\n- 0 (default): Regular installment. This value is not allowed for airline transactions.\n- 1: Installment payment with down payment.\n- 2: Installment payment without down payment. This value is supported only for airline transactions.\n- 3: Installment payment; down payment and boarding fee will follow. This value is supported only for airline transactions.\n- 4: Down payment only; regular installment payment will follow.\n- 5: Boarding fee only. This value is supported only for airline transactions.\n\nThis field is supported only for installment payments with Visa on CyberSource through VisaNet in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 9\n- Field: Merchant Installment Supporting Information\n" + }, + "additionalCosts": { + "type": "string", + "maxLength": 12, + "description": "Additional costs charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 128-139\n- Field: Total Other Costs\n" + }, + "additionalCostsPercentage": { + "type": "string", + "maxLength": 4, + "description": "Additional costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 140-143\n- Field: Percent of Total Other Costs\n" + }, + "amountFunded": { + "type": "string", + "maxLength": 12, + "description": "Amount funded.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 48-59\n- Field: Total Amount Funded\n" + }, + "amountRequestedPercentage": { + "type": "string", + "maxLength": 4, + "description": "Amount requested divided by the amount funded.\n\nFor example:\n- A value of 90.0 specifies 90%.\n- A value of 93.7 specifies 93.7%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 60-63\n- Field: Percent of Amount Requested\n" + }, + "annualFinancingCost": { + "type": "string", + "maxLength": 7, + "description": "Annual cost of financing the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 158-164\n- Field: Annual Total Cost of Financing\n" + }, + "annualInterestRate": { + "type": "string", + "maxLength": 7, + "description": "Annual interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 151-157\n- Field: Annual Interest Rate\n" + }, + "expenses": { + "type": "string", + "maxLength": 12, + "description": "Expenses charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 64-75\n- Field: Total Expenses\n" + }, + "expensesPercentage": { + "type": "string", + "maxLength": 4, + "description": "Expenses divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 76-79\n- Field: Percent of Total Expenses\n" + }, + "fees": { + "type": "string", + "maxLength": 12, + "description": "Fees charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 80-91\n- Field: Total Fees\n" + }, + "feesPercentage": { + "type": "string", + "maxLength": 4, + "description": "Fees divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 92-95\n- Field: Percent of Total Fees\n" + }, + "insurance": { + "type": "string", + "maxLength": 12, + "description": "Insurance charged by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 112-123\n- Field: Total Insurance\n" + }, + "insurancePercentage": { + "type": "string", + "maxLength": 4, + "description": "Insurance costs divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 124-127\n- Field: Percent Of Total Insurance\n" + }, + "monthlyInterestRate": { + "type": "string", + "maxLength": 7, + "description": "Monthly interest rate.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 144-150\n- Field: Monthly Interest Rate\n" + }, + "taxes": { + "type": "string", + "maxLength": 12, + "description": "Taxes collected by the issuer to fund the installment payments.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 96-107\n- Field: Total Taxes\n" + }, + "taxesPercentage": { + "type": "string", + "maxLength": 4, + "description": "Taxes divided by the amount funded.\n\nFor example:\n- A value of 1.0 specifies 1%.\n- A value of 4.0 specifies 4%.\n\nThis field is included in the authorization reply for the Crediario eligibility request when the issuer approves\nthe cardholder's request for Crediario installment payments in Brazil.\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nThis field is supported only for Crediario installment payments in Brazil on **CyberSource through VisaNet**.\n\nThe value for this field corresponds to the following data in the TC 33 capture file1:\n- Record: CP01 TCR9\n- Position: 108-111\n- Field: Percent of Total Taxes\n" + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "maxLength": 2, + "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" + }, + "agency": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 8, + "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" + }, + "name": { + "type": "string", + "maxLength": 25, + "description": "Name of travel agency that made the reservation.\n" + } + } + }, + "autoRental": { + "type": "object", + "properties": { + "noShowIndicator": { + "type": "boolean", + "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" + }, + "customerName": { + "type": "string", + "maxLength": 40, + "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" + }, + "vehicleClass": { + "type": "string", + "maxLength": 4, + "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" + }, + "distanceTravelled": { + "type": "string", + "maxLength": 5, + "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" + }, + "distanceUnit": { + "type": "string", + "maxLength": 1, + "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" + }, + "returnDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "rentalDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "maxFreeDistance": { + "type": "string", + "maxLength": 4, + "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" + }, + "insuranceIndicator": { + "type": "boolean", + "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" + }, + "programCode": { + "type": "string", + "maxLength": 2, + "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" + }, + "returnAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City where the auto was returned to the rental agency.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" + } + } + }, + "rentalAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" + }, + "address1": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "address2": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" + } + } + }, + "agreementNumber": { + "type": "string", + "maxLength": 25, + "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" + }, + "odometerReading": { + "type": "string", + "maxLength": 8, + "description": "Odometer reading at time of vehicle rental.\n" + }, + "vehicleIdentificationNumber": { + "type": "string", + "maxLength": 20, + "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" + }, + "companyId": { + "type": "string", + "maxLength": 12, + "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" + }, + "numberOfAdditionalDrivers": { + "type": "string", + "maxLength": 1, + "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" + }, + "driverAge": { + "type": "string", + "maxLength": 3, + "description": "Age of the driver renting the vehicle.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 2, + "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" + }, + "vehicleMake": { + "type": "string", + "maxLength": 10, + "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" + }, + "vehicleModel": { + "type": "string", + "maxLength": 10, + "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" + }, + "timePeriod": { + "type": "string", + "maxLength": 7, + "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" + }, + "taxDetails": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" + }, + "taxType": { + "type": "string", + "maxLength": 10, + "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" + }, + "taxSummary": { + "type": "string", + "maxLength": 12, + "description": "Summary of all tax types\n" + } + } + }, + "insuranceAmount": { + "type": "string", + "maxLength": 12, + "description": "Insurance charges.\nField is conditional and can include decimal point.\n" + }, + "oneWayDropOffAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" + }, + "adjustedAmountIndicator": { + "type": "string", + "maxLength": 1, + "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" + }, + "adjustedAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" + }, + "fuelCharges": { + "type": "string", + "maxLength": 12, + "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "weeklyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" + }, + "dailyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" + }, + "ratePerMile": { + "type": "string", + "maxLength": 12, + "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" + }, + "mileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" + }, + "extraMileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "lateFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" + }, + "towingCharge": { + "type": "string", + "maxLength": 4, + "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" + }, + "extraCharge": { + "type": "string", + "maxLength": 12, + "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" + }, + "gpsCharge": { + "type": "string", + "maxLength": 12, + "description": "Amount charged for renting a Global Positioning Service (GPS).\n" + }, + "phoneCharge": { + "type": "string", + "maxLength": 12, + "description": "Additional charges incurred for phone usage included on the total bill.\n" + }, + "parkingViolationCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" + }, + "otherCharges": { + "type": "string", + "maxLength": 12, + "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" + } + } + }, + "lodging": { + "type": "object", + "properties": { + "checkInDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "checkOutDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "room": { + "type": "array", + "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", + "items": { + "type": "object", + "properties": { + "dailyRate": { + "type": "string", + "maxLength": 8, + "description": "Daily cost of the room.\n" + }, + "numberOfNights": { + "type": "integer", + "minimum": 1, + "maximum": 9999, + "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" + } + } + } + }, + "smokingPreference": { + "type": "string", + "maxLength": 1, + "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" + }, + "numberOfRooms": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of rooms booked by the cardholder.\n" + }, + "numberOfGuests": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of guests staying in the room.\n" + }, + "roomBedType": { + "type": "string", + "maxLength": 12, + "description": "Type of room, such as queen, king, or two doubles.\n" + }, + "roomTaxType": { + "type": "string", + "maxLength": 10, + "description": "Type of tax, such as tourist or hotel.\n" + }, + "roomRateType": { + "type": "string", + "maxLength": 12, + "description": "Type of rate, such as corporate or senior citizen.\n" + }, + "guestName": { + "type": "string", + "maxLength": 40, + "description": "Name of the guest under which the room is reserved.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Your toll-free customer service phone number.\n" + }, + "corporateClientCode": { + "type": "string", + "maxLength": 17, + "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" + }, + "additionalDiscountAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of an additional coupon or discount.\n" + }, + "roomLocation": { + "type": "string", + "maxLength": 10, + "description": "Location of room, such as lake view or ocean view.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 1, + "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" + }, + "totalTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount.\n" + }, + "prepaidCost": { + "type": "string", + "maxLength": 12, + "description": "Prepaid amount, such as a deposit.\n" + }, + "foodAndBeverageCost": { + "type": "string", + "maxLength": 12, + "description": "Cost for all food and beverages.\n" + }, + "roomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax for the room.\n" + }, + "adjustmentAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" + }, + "phoneCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of telephone services.\n" + }, + "restaurantCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of restaurant purchases\n" + }, + "roomServiceCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of room service.\n" + }, + "miniBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of mini-bar purchases.\n" + }, + "laundryCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of laundry services.\n" + }, + "miscellaneousCost": { + "type": "string", + "maxLength": 12, + "description": "Miscellaneous costs.\n" + }, + "giftShopCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of gift shop purchases.\n" + }, + "movieCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of movies.\n" + }, + "healthClubCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of health club services.\n" + }, + "valetParkingCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of valet parking services.\n" + }, + "cashDisbursementCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of the cash that was disbursed plus any associated service fees\n" + }, + "nonRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of non-room purchases, such as meals and gifts.\n" + }, + "businessCenterCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of business center services.\n" + }, + "loungeBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of lounge and bar purchases.\n" + }, + "transportationCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of transportation services.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 12, + "description": "Gratuity.\n" + }, + "conferenceRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of conference room services.\n" + }, + "audioVisualCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of audio visual services.\n" + }, + "banquestCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of banquet services.\n" + }, + "nonRoomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax on non-room purchases.\n" + }, + "earlyCheckOutCost": { + "type": "string", + "maxLength": 12, + "description": "Service fee for early departure.\n" + }, + "internetAccessCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of Internet access.\n" + } + } + }, + "transit": { + "type": "object", + "properties": { + "airline": { + "type": "object", + "properties": { + "bookingReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" + }, + "carrierName": { + "type": "string", + "maxLength": 15, + "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "ticketIssuer": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 4, + "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" + }, + "name": { + "type": "string", + "maxLength": 20, + "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" + }, + "address": { + "type": "string", + "maxLength": 16, + "description": "Address of the company issuing the ticket.\n" + }, + "locality": { + "type": "string", + "maxLength": 18, + "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 18, + "description": "State in which transaction occured.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Zip code of the city in which transaction occured.\n" + }, + "country": { + "type": "string", + "maxLength": 18, + "description": "Country in which transaction occured.\n" + } + } + }, + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "checkDigit": { + "type": "string", + "maxLength": 1, + "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" + }, + "restrictedTicketIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "transactionType": { + "type": "integer", + "maxLength": 2, + "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" + }, + "extendedPaymentCode": { + "type": "string", + "maxLength": 3, + "description": "The field is not currently supported.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 42, + "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" + }, + "customerCode": { + "type": "string", + "maxLength": 40, + "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "documentType": { + "type": "string", + "maxLength": 1, + "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" + }, + "documentNumber": { + "type": "string", + "maxLength": 14, + "description": "The field is not currently supported.\n" + }, + "documentNumberOfParts": { + "type": "integer", + "maxLength": 4, + "description": "The field is not currently supported.\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 25, + "description": "Invoice number for the airline transaction.\n" + }, + "invoiceDate": { + "type": "integer", + "maxLength": 8, + "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" + }, + "additionalCharges": { + "type": "string", + "maxLength": 20, + "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" + }, + "totalFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingSequence": { + "type": "string", + "maxLength": 2, + "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" + }, + "totalClearingAmount": { + "type": "string", + "maxLength": 20, + "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationSystemCode": { + "type": "string", + "maxLength": 4, + "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "processIdentifier": { + "type": "string", + "maxLength": 3, + "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" + }, + "ticketIssueDate": { + "type": "string", + "maxLength": 8, + "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" + }, + "electronicTicketIndicator": { + "type": "boolean", + "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" + }, + "originalTicketNumber": { + "type": "string", + "maxLength": 14, + "description": "Original ticket number when the transaction is for a replacement ticket.\n" + }, + "purchaseType": { + "type": "string", + "maxLength": 3, + "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 1, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" + }, + "ticketChangeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" + }, + "planNumber": { + "type": "string", + "maxLength": 1, + "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" + }, + "arrivalDate": { + "type": "string", + "maxLength": 8, + "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" + }, + "restrictedTicketDesciption": { + "type": "string", + "maxLength": 20, + "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" + }, + "exchangeTicketAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" + }, + "exchangeTicketFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationType": { + "type": "string", + "maxLength": 32, + "description": "The field is not currently supported.\n" + }, + "boardingFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Boarding fee.\n" + }, + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "carrierCode": { + "type": "string", + "maxLength": 4, + "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "flightNumber": { + "type": "string", + "maxLength": 6, + "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "originatingAirportCode": { + "type": "string", + "maxLength": 5, + "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "class": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "stopoverIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureDate": { + "type": "integer", + "maxLength": 8, + "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "destinationAirportCode": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "fareBasis": { + "type": "string", + "maxLength": 15, + "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" + }, + "departTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of departure tax for this leg of the trip.\n" + }, + "conjunctionTicket": { + "type": "string", + "maxLength": 25, + "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "exchangeTicketNumber": { + "type": "string", + "maxLength": 25, + "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "couponNumber": { + "type": "string", + "maxLength": 1, + "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "departureTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "arrivalTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "arrivalTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "endorsementsRestrictions": { + "type": "string", + "maxLength": 20, + "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "totalFareAmount": { + "type": "string", + "maxLength": 15, + "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "feeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + } + } + } + }, + "ancillaryInformation": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 20, + "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" + }, + "connectedTicketNumber": { + "type": "string", + "maxLength": 15, + "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 15, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "service": { + "type": "array", + "items": { + "type": "object", + "properties": { + "categoryCode": { + "type": "string", + "maxLength": 4, + "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "subCategoryCode": { + "type": "string", + "maxLength": 4, + "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" + } + } + } + } + } + } + } + } + } + } + } + }, + "promotionInformation": { + "type": "object", + "properties": { + "additionalCode": { + "type": "string", + "maxLength": 12, + "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" + }, + "code": { + "type": "string", + "maxLength": 12, + "description": "Code for a promotion or discount.\n" + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + }, + "x-example": { + "example0": { + "summary": "Capture a Payment", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + }, + "example1": { + "summary": "Capture a Payment - Service Fee", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2325.00", + "currency": "USD", + "serviceFeeAmount": "30.0" + } + }, + "merchantInformation": { + "serviceFeeDescriptor": { + "name": "Vacations Service Fee", + "contact": 8009999999, + "state": "CA" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example14" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + }, + "example2": { + "summary": "Capture of Authorization that used Swiped track data", + "sample-name": "Capture of Authorization that used Swiped track data", + "value": { + "clientReferenceInformation": { + "code": "1234567890", + "partner": { + "thirdPartyCertificationNumber": "123456789012" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": 100, + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example3": { + "summary": "Restaurant Capture with Gratuity", + "sample-name": "Restaurant Capture with Gratuity", + "value": { + "clientReferenceInformation": { + "code": 1234567890, + "partner": { + "thirdPartyCertificationNumber": 123456789012 + } + }, + "processingInformation": { + "industryDataType": "restaurant" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": 100, + "currency": "USD", + "gratuityAmount": "11.50" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The payment ID returned from a previous payment request. This ID links the capture to the payment.\n", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2PaymentsCapturesPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + }, + "void": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + }, + "refund": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "transactionId": { + "type": "string", + "maxLength": 18, + "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "totalAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount you requested for the capture.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "processorTransactionFee": { + "type": "string", + "maxLength": 15, + "description": "The fee decided by the PSP/Processor per transaction." + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "level3TransmissionStatus": { + "type": "boolean", + "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "enhancedDataEnabled": { + "type": "boolean", + "description": "The possible values for the reply field are:\n- `true` : the airline data was included in the request to the processor.\n- `false` : the airline data was not included in the request to the processor.\n\nReturned by authorization, capture, or credit services.\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/captures/4963014519526177701545", + "method": "GET" + }, + "refund": { + "href": "/pts/v2/captures/4963014519526177701545/refunds", + "method": "POST" + }, + "void": { + "href": "/pts/v2/captures/4963014519526177701545/voids", + "method": "POST" + } + }, + "id": "4963014519526177701545", + "submitTimeUtc": "2017-06-01T071731Z", + "status": "200", + "reconciliationId": "39570715X3E1LBQA", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "ptsV2PaymentsCapturesPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - EXCEEDS_AUTH_AMOUNT\n - AUTH_ALREADY_REVERSED\n - TRANSACTION_ALREADY_SETTLED\n - INVALID_AMOUNT\n - MISSING_AUTH\n - TRANSACTION_ALREADY_REVERSED_OR_SETTLED\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2PaymentsCapturesPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Capture a Payment", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + }, + "example1": { + "summary": "Capture a Payment - Service Fee", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2325.00", + "currency": "USD", + "serviceFeeAmount": "30.0" + } + }, + "merchantInformation": { + "serviceFeeDescriptor": { + "name": "Vacations Service Fee", + "contact": 8009999999, + "state": "CA" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example14" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + }, + "example2": { + "summary": "Capture of Authorization that used Swiped track data", + "sample-name": "Capture of Authorization that used Swiped track data", + "value": { + "clientReferenceInformation": { + "code": "1234567890", + "partner": { + "thirdPartyCertificationNumber": "123456789012" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": 100, + "currency": "USD" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example3": { + "summary": "Restaurant Capture with Gratuity", + "sample-name": "Restaurant Capture with Gratuity", + "value": { + "clientReferenceInformation": { + "code": 1234567890, + "partner": { + "thirdPartyCertificationNumber": 123456789012 + } + }, + "processingInformation": { + "industryDataType": "restaurant" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": 100, + "currency": "USD", + "gratuityAmount": "11.50" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + } + } + } + }, + "/pts/v2/payments/{id}/refunds": { + "post": { + "summary": "Refund a Payment", + "description": "Refund a Payment API is only used, if you have requested Authorization and Capture together in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call. Include the payment ID in the POST request to refund the payment amount.\n", + "tags": [ + "refund" + ], + "operationId": "refundPayment", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "refundPaymentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "purchaseLevel": { + "type": "string", + "maxLength": 1, + "description": "Set this field to 3 to indicate that the request includes Level III data." + }, + "recurringOptions": { + "type": "object", + "properties": { + "loanPayment": { + "type": "boolean", + "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", + "default": false + } + } + }, + "industryDataType": { + "type": "string", + "maxLength": 20, + "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "accountEncoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 5, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "sourceAccountType": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" + }, + "sourceAccountTypeDetails": { + "type": "string", + "maxLength": 4, + "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 1, + "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" + }, + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "encoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "checkNumber": { + "type": "string", + "maxLength": 8, + "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" + }, + "checkImageReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Image reference number associated with the check. You cannot include any special characters.\n" + } + } + }, + "routingNumber": { + "type": "string", + "maxLength": 9, + "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "iban": { + "type": "string", + "maxLength": 50, + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "cryptogram": { + "type": "string", + "maxLength": 255, + "description": "This field contains token information." + }, + "requestorId": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "assuranceLevel": { + "type": "string", + "maxLength": 2, + "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" + }, + "storageMethod": { + "type": "string", + "maxLength": 3, + "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "securityCodeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" + } + } + }, + "fluidData": { + "type": "object", + "properties": { + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 12, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "legacyToken": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 16, + "maxLength": 22 + } + } + }, + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + }, + "eWallet": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "maxLength": 26, + "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n" + }, + "nationalTaxIncluded": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" + }, + "taxAppliedLevel": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 3, + "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" + }, + "freightAmount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "foreignAmount": { + "type": "string", + "maxLength": 15, + "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "description": "Set this field to the converted amount that was returned by the DCC provider.\n" + }, + "exchangeRate": { + "type": "string", + "maxLength": 13, + "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" + }, + "exchangeRateTimeStamp": { + "type": "string", + "maxLength": 14, + "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" + }, + "amexAdditionalAmounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "amount": { + "type": "string", + "maxLength": 12, + "description": "Additional amount. This field is supported only for **American Express Direct**.\n" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + }, + "originalCurrency": { + "type": "string", + "maxLength": 15, + "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "company": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "address1": { + "type": "string", + "maxLength": 40, + "description": "First line in the street address of the company purchasing the product." + }, + "address2": { + "type": "string", + "maxLength": 40, + "description": "Additional address information for the company purchasing the product." + }, + "locality": { + "type": "string", + "maxLength": 30, + "description": "City in the address of the company purchasing the product." + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + } + } + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "unitOfMeasure": { + "type": "string", + "maxLength": 12, + "description": "Unit of measure, or unit of measure code, for the item.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + }, + "taxRate": { + "type": "string", + "maxLength": 7, + "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" + }, + "taxStatusIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "amountIncludesTax": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "typeOfSupply": { + "type": "string", + "maxLength": 2, + "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 13, + "description": "Discount applied to the item." + }, + "discountApplied": { + "type": "boolean", + "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "discountRate": { + "type": "string", + "maxLength": 6, + "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 23, + "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + } + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "purchaseOrderNumber": { + "type": "string", + "maxLength": 25, + "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseContactName": { + "type": "string", + "maxLength": 36, + "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + }, + "vatInvoiceReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 4, + "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "transactionAdviceAddendum": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "maxLength": 40, + "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" + } + } + } + } + } + }, + "shippingDetails": { + "type": "object", + "properties": { + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "userAgent": { + "type": "string", + "maxLength": 40, + "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "alternateName": { + "type": "string", + "maxLength": 13, + "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" + }, + "contact": { + "type": "string", + "maxLength": 14, + "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "administrativeArea": { + "type": "string", + "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "phone": { + "type": "string", + "maxLength": 13, + "description": "Merchant phone as contact information for CNP transactions\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + }, + "countryOfOrigin": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" + } + } + }, + "categoryCode": { + "type": "integer", + "maximum": 9999, + "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "cardAcceptorReferenceNumber": { + "type": "string", + "maxLength": 25, + "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "aggregatorInformation": { + "type": "object", + "properties": { + "aggregatorId": { + "type": "string", + "maxLength": 20, + "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "name": { + "type": "string", + "maxLength": 37, + "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "subMerchant": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 37, + "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" + }, + "address1": { + "type": "string", + "maxLength": 38, + "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "locality": { + "type": "string", + "maxLength": 21, + "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "email": { + "type": "string", + "maxLength": 40, + "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" + }, + "id": { + "type": "string", + "maxLength": 20, + "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + }, + "fallback": { + "type": "boolean", + "maxLength": 5, + "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" + } + } + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "maxLength": 2, + "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" + }, + "agency": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 8, + "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" + }, + "name": { + "type": "string", + "maxLength": 25, + "description": "Name of travel agency that made the reservation.\n" + } + } + }, + "autoRental": { + "type": "object", + "properties": { + "noShowIndicator": { + "type": "boolean", + "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" + }, + "customerName": { + "type": "string", + "maxLength": 40, + "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" + }, + "vehicleClass": { + "type": "string", + "maxLength": 4, + "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" + }, + "distanceTravelled": { + "type": "string", + "maxLength": 5, + "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" + }, + "distanceUnit": { + "type": "string", + "maxLength": 1, + "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" + }, + "returnDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "rentalDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "maxFreeDistance": { + "type": "string", + "maxLength": 4, + "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" + }, + "insuranceIndicator": { + "type": "boolean", + "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" + }, + "programCode": { + "type": "string", + "maxLength": 2, + "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" + }, + "returnAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City where the auto was returned to the rental agency.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" + } + } + }, + "rentalAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" + }, + "address1": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "address2": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" + } + } + }, + "agreementNumber": { + "type": "string", + "maxLength": 25, + "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" + }, + "odometerReading": { + "type": "string", + "maxLength": 8, + "description": "Odometer reading at time of vehicle rental.\n" + }, + "vehicleIdentificationNumber": { + "type": "string", + "maxLength": 20, + "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" + }, + "companyId": { + "type": "string", + "maxLength": 12, + "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" + }, + "numberOfAdditionalDrivers": { + "type": "string", + "maxLength": 1, + "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" + }, + "driverAge": { + "type": "string", + "maxLength": 3, + "description": "Age of the driver renting the vehicle.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 2, + "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" + }, + "vehicleMake": { + "type": "string", + "maxLength": 10, + "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" + }, + "vehicleModel": { + "type": "string", + "maxLength": 10, + "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" + }, + "timePeriod": { + "type": "string", + "maxLength": 7, + "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" + }, + "taxDetails": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" + }, + "taxType": { + "type": "string", + "maxLength": 10, + "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" + }, + "taxSummary": { + "type": "string", + "maxLength": 12, + "description": "Summary of all tax types\n" + } + } + }, + "insuranceAmount": { + "type": "string", + "maxLength": 12, + "description": "Insurance charges.\nField is conditional and can include decimal point.\n" + }, + "oneWayDropOffAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" + }, + "adjustedAmountIndicator": { + "type": "string", + "maxLength": 1, + "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" + }, + "adjustedAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" + }, + "fuelCharges": { + "type": "string", + "maxLength": 12, + "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "weeklyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" + }, + "dailyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" + }, + "ratePerMile": { + "type": "string", + "maxLength": 12, + "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" + }, + "mileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" + }, + "extraMileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "lateFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" + }, + "towingCharge": { + "type": "string", + "maxLength": 4, + "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" + }, + "extraCharge": { + "type": "string", + "maxLength": 12, + "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" + }, + "gpsCharge": { + "type": "string", + "maxLength": 12, + "description": "Amount charged for renting a Global Positioning Service (GPS).\n" + }, + "phoneCharge": { + "type": "string", + "maxLength": 12, + "description": "Additional charges incurred for phone usage included on the total bill.\n" + }, + "parkingViolationCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" + }, + "otherCharges": { + "type": "string", + "maxLength": 12, + "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" + } + } + }, + "lodging": { + "type": "object", + "properties": { + "checkInDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "checkOutDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "room": { + "type": "array", + "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", + "items": { + "type": "object", + "properties": { + "dailyRate": { + "type": "string", + "maxLength": 8, + "description": "Daily cost of the room.\n" + }, + "numberOfNights": { + "type": "integer", + "minimum": 1, + "maximum": 9999, + "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" + } + } + } + }, + "smokingPreference": { + "type": "string", + "maxLength": 1, + "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" + }, + "numberOfRooms": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of rooms booked by the cardholder.\n" + }, + "numberOfGuests": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of guests staying in the room.\n" + }, + "roomBedType": { + "type": "string", + "maxLength": 12, + "description": "Type of room, such as queen, king, or two doubles.\n" + }, + "roomTaxType": { + "type": "string", + "maxLength": 10, + "description": "Type of tax, such as tourist or hotel.\n" + }, + "roomRateType": { + "type": "string", + "maxLength": 12, + "description": "Type of rate, such as corporate or senior citizen.\n" + }, + "guestName": { + "type": "string", + "maxLength": 40, + "description": "Name of the guest under which the room is reserved.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Your toll-free customer service phone number.\n" + }, + "corporateClientCode": { + "type": "string", + "maxLength": 17, + "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" + }, + "additionalDiscountAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of an additional coupon or discount.\n" + }, + "roomLocation": { + "type": "string", + "maxLength": 10, + "description": "Location of room, such as lake view or ocean view.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 1, + "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" + }, + "totalTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount.\n" + }, + "prepaidCost": { + "type": "string", + "maxLength": 12, + "description": "Prepaid amount, such as a deposit.\n" + }, + "foodAndBeverageCost": { + "type": "string", + "maxLength": 12, + "description": "Cost for all food and beverages.\n" + }, + "roomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax for the room.\n" + }, + "adjustmentAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" + }, + "phoneCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of telephone services.\n" + }, + "restaurantCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of restaurant purchases\n" + }, + "roomServiceCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of room service.\n" + }, + "miniBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of mini-bar purchases.\n" + }, + "laundryCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of laundry services.\n" + }, + "miscellaneousCost": { + "type": "string", + "maxLength": 12, + "description": "Miscellaneous costs.\n" + }, + "giftShopCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of gift shop purchases.\n" + }, + "movieCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of movies.\n" + }, + "healthClubCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of health club services.\n" + }, + "valetParkingCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of valet parking services.\n" + }, + "cashDisbursementCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of the cash that was disbursed plus any associated service fees\n" + }, + "nonRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of non-room purchases, such as meals and gifts.\n" + }, + "businessCenterCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of business center services.\n" + }, + "loungeBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of lounge and bar purchases.\n" + }, + "transportationCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of transportation services.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 12, + "description": "Gratuity.\n" + }, + "conferenceRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of conference room services.\n" + }, + "audioVisualCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of audio visual services.\n" + }, + "banquestCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of banquet services.\n" + }, + "nonRoomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax on non-room purchases.\n" + }, + "earlyCheckOutCost": { + "type": "string", + "maxLength": 12, + "description": "Service fee for early departure.\n" + }, + "internetAccessCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of Internet access.\n" + } + } + }, + "transit": { + "type": "object", + "properties": { + "airline": { + "type": "object", + "properties": { + "bookingReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" + }, + "carrierName": { + "type": "string", + "maxLength": 15, + "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "ticketIssuer": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 4, + "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" + }, + "name": { + "type": "string", + "maxLength": 20, + "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" + }, + "address": { + "type": "string", + "maxLength": 16, + "description": "Address of the company issuing the ticket.\n" + }, + "locality": { + "type": "string", + "maxLength": 18, + "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 18, + "description": "State in which transaction occured.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Zip code of the city in which transaction occured.\n" + }, + "country": { + "type": "string", + "maxLength": 18, + "description": "Country in which transaction occured.\n" + } + } + }, + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "checkDigit": { + "type": "string", + "maxLength": 1, + "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" + }, + "restrictedTicketIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "transactionType": { + "type": "integer", + "maxLength": 2, + "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" + }, + "extendedPaymentCode": { + "type": "string", + "maxLength": 3, + "description": "The field is not currently supported.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 42, + "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" + }, + "customerCode": { + "type": "string", + "maxLength": 40, + "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "documentType": { + "type": "string", + "maxLength": 1, + "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" + }, + "documentNumber": { + "type": "string", + "maxLength": 14, + "description": "The field is not currently supported.\n" + }, + "documentNumberOfParts": { + "type": "integer", + "maxLength": 4, + "description": "The field is not currently supported.\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 25, + "description": "Invoice number for the airline transaction.\n" + }, + "invoiceDate": { + "type": "integer", + "maxLength": 8, + "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" + }, + "additionalCharges": { + "type": "string", + "maxLength": 20, + "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" + }, + "totalFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingSequence": { + "type": "string", + "maxLength": 2, + "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" + }, + "totalClearingAmount": { + "type": "string", + "maxLength": 20, + "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationSystemCode": { + "type": "string", + "maxLength": 4, + "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "processIdentifier": { + "type": "string", + "maxLength": 3, + "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" + }, + "ticketIssueDate": { + "type": "string", + "maxLength": 8, + "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" + }, + "electronicTicketIndicator": { + "type": "boolean", + "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" + }, + "originalTicketNumber": { + "type": "string", + "maxLength": 14, + "description": "Original ticket number when the transaction is for a replacement ticket.\n" + }, + "purchaseType": { + "type": "string", + "maxLength": 3, + "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 1, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" + }, + "ticketChangeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" + }, + "planNumber": { + "type": "string", + "maxLength": 1, + "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" + }, + "arrivalDate": { + "type": "string", + "maxLength": 8, + "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" + }, + "restrictedTicketDesciption": { + "type": "string", + "maxLength": 20, + "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" + }, + "exchangeTicketAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" + }, + "exchangeTicketFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationType": { + "type": "string", + "maxLength": 32, + "description": "The field is not currently supported.\n" + }, + "boardingFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Boarding fee.\n" + }, + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "carrierCode": { + "type": "string", + "maxLength": 4, + "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "flightNumber": { + "type": "string", + "maxLength": 6, + "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "originatingAirportCode": { + "type": "string", + "maxLength": 5, + "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "class": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "stopoverIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureDate": { + "type": "integer", + "maxLength": 8, + "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "destinationAirportCode": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "fareBasis": { + "type": "string", + "maxLength": 15, + "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" + }, + "departTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of departure tax for this leg of the trip.\n" + }, + "conjunctionTicket": { + "type": "string", + "maxLength": 25, + "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "exchangeTicketNumber": { + "type": "string", + "maxLength": 25, + "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "couponNumber": { + "type": "string", + "maxLength": 1, + "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "departureTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "arrivalTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "arrivalTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "endorsementsRestrictions": { + "type": "string", + "maxLength": 20, + "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "totalFareAmount": { + "type": "string", + "maxLength": 15, + "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "feeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + } + } + } + }, + "ancillaryInformation": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 20, + "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" + }, + "connectedTicketNumber": { + "type": "string", + "maxLength": 15, + "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 15, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "service": { + "type": "array", + "items": { + "type": "object", + "properties": { + "categoryCode": { + "type": "string", + "maxLength": 4, + "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "subCategoryCode": { + "type": "string", + "maxLength": 4, + "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" + } + } + } + } + } + } + } + } + } + } + } + }, + "promotionInformation": { + "type": "object", + "properties": { + "additionalCode": { + "type": "string", + "maxLength": 12, + "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" + }, + "code": { + "type": "string", + "maxLength": 12, + "description": "Code for a promotion or discount.\n" + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "Testing-VDP-Payments-Refund" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The payment ID. This ID is returned from a previous payment request.", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2PaymentsRefundPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + }, + "void": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "refundAmountDetails": { + "type": "object", + "properties": { + "refundAmount": { + "type": "string", + "maxLength": 15, + "description": "Total amount of the refund." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + }, + "transactionId": { + "type": "string", + "maxLength": 18, + "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" + }, + "forwardedAcquirerCode": { + "type": "string", + "maxLength": 32, + "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" + }, + "merchantNumber": { + "type": "string", + "maxLength": 15, + "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "achVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 2, + "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + }, + "resultCodeRaw": { + "type": "string", + "maxLength": 10, + "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + } + } + }, + "networkTransactionId": { + "type": "string", + "description": "Same value as `processorInformation.transactionId`" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "invoiceDetails": { + "type": "object", + "properties": { + "level3TransmissionStatus": { + "type": "boolean", + "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/refunds/4963014779006178301545", + "method": "GET" + }, + "void": { + "href": "/pts/v2/refunds/4963014779006178301545/voids", + "method": "POST" + } + }, + "id": "4963014779006178301545", + "submitTimeUtc": "2017-06-01T071757Z", + "status": "200", + "reconciliationId": "39571012D3DFEKS0", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "Testing-VDP-Payments-Refund" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "refundAmountDetails": { + "currency": "USD", + "refundAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "ptsV2PaymentsRefundPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2PaymentsRefundPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Refund a Payment", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "10", + "currency": "USD" + } + } + } + }, + "example1": { + "summary": "Electronic check follow-on Refund", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "processingInformation": { + "commerceIndicator": "internet" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + } + }, + "paymentInformation": { + "paymentType": { + "name": "CHECK" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/captures/{id}/refunds": { + "post": { + "summary": "Refund a Capture", + "description": "Refund a capture API is only used, if you have requested Capture independenlty using [/pts/v2/payments/{id}/captures](https://developer.cybersource.com/api-reference-assets/index.html#payments_capture) API call. Include the capture ID in the POST request to refund the captured amount.\n", + "tags": [ + "refund" + ], + "operationId": "refundCapture", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "refundCaptureRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "purchaseLevel": { + "type": "string", + "maxLength": 1, + "description": "Set this field to 3 to indicate that the request includes Level III data." + }, + "recurringOptions": { + "type": "object", + "properties": { + "loanPayment": { + "type": "boolean", + "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", + "default": false + } + } + }, + "industryDataType": { + "type": "string", + "maxLength": 20, + "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "accountEncoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 5, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "sourceAccountType": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" + }, + "sourceAccountTypeDetails": { + "type": "string", + "maxLength": 4, + "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 1, + "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" + }, + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "encoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "checkNumber": { + "type": "string", + "maxLength": 8, + "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" + }, + "checkImageReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Image reference number associated with the check. You cannot include any special characters.\n" + } + } + }, + "routingNumber": { + "type": "string", + "maxLength": 9, + "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "iban": { + "type": "string", + "maxLength": 50, + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "cryptogram": { + "type": "string", + "maxLength": 255, + "description": "This field contains token information." + }, + "requestorId": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "assuranceLevel": { + "type": "string", + "maxLength": 2, + "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" + }, + "storageMethod": { + "type": "string", + "maxLength": 3, + "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "securityCodeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" + } + } + }, + "fluidData": { + "type": "object", + "properties": { + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 12, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "legacyToken": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 16, + "maxLength": 22 + } + } + }, + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + }, + "eWallet": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "maxLength": 26, + "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n" + }, + "nationalTaxIncluded": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" + }, + "taxAppliedLevel": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 3, + "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" + }, + "freightAmount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "foreignAmount": { + "type": "string", + "maxLength": 15, + "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "description": "Set this field to the converted amount that was returned by the DCC provider.\n" + }, + "exchangeRate": { + "type": "string", + "maxLength": 13, + "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" + }, + "exchangeRateTimeStamp": { + "type": "string", + "maxLength": 14, + "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" + }, + "amexAdditionalAmounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "amount": { + "type": "string", + "maxLength": 12, + "description": "Additional amount. This field is supported only for **American Express Direct**.\n" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + }, + "originalCurrency": { + "type": "string", + "maxLength": 15, + "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "company": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "address1": { + "type": "string", + "maxLength": 40, + "description": "First line in the street address of the company purchasing the product." + }, + "address2": { + "type": "string", + "maxLength": 40, + "description": "Additional address information for the company purchasing the product." + }, + "locality": { + "type": "string", + "maxLength": 30, + "description": "City in the address of the company purchasing the product." + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + } + } + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "unitOfMeasure": { + "type": "string", + "maxLength": 12, + "description": "Unit of measure, or unit of measure code, for the item.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + }, + "taxRate": { + "type": "string", + "maxLength": 7, + "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" + }, + "taxStatusIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "amountIncludesTax": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "typeOfSupply": { + "type": "string", + "maxLength": 2, + "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 13, + "description": "Discount applied to the item." + }, + "discountApplied": { + "type": "boolean", + "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "discountRate": { + "type": "string", + "maxLength": 6, + "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 23, + "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + } + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "purchaseOrderNumber": { + "type": "string", + "maxLength": 25, + "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseContactName": { + "type": "string", + "maxLength": 36, + "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + }, + "vatInvoiceReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 4, + "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "transactionAdviceAddendum": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "maxLength": 40, + "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" + } + } + } + } + } + }, + "shippingDetails": { + "type": "object", + "properties": { + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "userAgent": { + "type": "string", + "maxLength": 40, + "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "alternateName": { + "type": "string", + "maxLength": 13, + "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" + }, + "contact": { + "type": "string", + "maxLength": 14, + "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "administrativeArea": { + "type": "string", + "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "phone": { + "type": "string", + "maxLength": 13, + "description": "Merchant phone as contact information for CNP transactions\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + }, + "countryOfOrigin": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" + } + } + }, + "categoryCode": { + "type": "integer", + "maximum": 9999, + "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "cardAcceptorReferenceNumber": { + "type": "string", + "maxLength": 25, + "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "aggregatorInformation": { + "type": "object", + "properties": { + "aggregatorId": { + "type": "string", + "maxLength": 20, + "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "name": { + "type": "string", + "maxLength": 37, + "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "subMerchant": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 37, + "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" + }, + "address1": { + "type": "string", + "maxLength": 38, + "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "locality": { + "type": "string", + "maxLength": 21, + "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "email": { + "type": "string", + "maxLength": 40, + "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" + }, + "id": { + "type": "string", + "maxLength": 20, + "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + }, + "fallback": { + "type": "boolean", + "maxLength": 5, + "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" + } + } + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "maxLength": 2, + "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" + }, + "agency": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 8, + "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" + }, + "name": { + "type": "string", + "maxLength": 25, + "description": "Name of travel agency that made the reservation.\n" + } + } + }, + "autoRental": { + "type": "object", + "properties": { + "noShowIndicator": { + "type": "boolean", + "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" + }, + "customerName": { + "type": "string", + "maxLength": 40, + "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" + }, + "vehicleClass": { + "type": "string", + "maxLength": 4, + "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" + }, + "distanceTravelled": { + "type": "string", + "maxLength": 5, + "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" + }, + "distanceUnit": { + "type": "string", + "maxLength": 1, + "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" + }, + "returnDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "rentalDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "maxFreeDistance": { + "type": "string", + "maxLength": 4, + "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" + }, + "insuranceIndicator": { + "type": "boolean", + "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" + }, + "programCode": { + "type": "string", + "maxLength": 2, + "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" + }, + "returnAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City where the auto was returned to the rental agency.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" + } + } + }, + "rentalAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" + }, + "address1": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "address2": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" + } + } + }, + "agreementNumber": { + "type": "string", + "maxLength": 25, + "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" + }, + "odometerReading": { + "type": "string", + "maxLength": 8, + "description": "Odometer reading at time of vehicle rental.\n" + }, + "vehicleIdentificationNumber": { + "type": "string", + "maxLength": 20, + "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" + }, + "companyId": { + "type": "string", + "maxLength": 12, + "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" + }, + "numberOfAdditionalDrivers": { + "type": "string", + "maxLength": 1, + "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" + }, + "driverAge": { + "type": "string", + "maxLength": 3, + "description": "Age of the driver renting the vehicle.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 2, + "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" + }, + "vehicleMake": { + "type": "string", + "maxLength": 10, + "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" + }, + "vehicleModel": { + "type": "string", + "maxLength": 10, + "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" + }, + "timePeriod": { + "type": "string", + "maxLength": 7, + "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" + }, + "taxDetails": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" + }, + "taxType": { + "type": "string", + "maxLength": 10, + "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" + }, + "taxSummary": { + "type": "string", + "maxLength": 12, + "description": "Summary of all tax types\n" + } + } + }, + "insuranceAmount": { + "type": "string", + "maxLength": 12, + "description": "Insurance charges.\nField is conditional and can include decimal point.\n" + }, + "oneWayDropOffAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" + }, + "adjustedAmountIndicator": { + "type": "string", + "maxLength": 1, + "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" + }, + "adjustedAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" + }, + "fuelCharges": { + "type": "string", + "maxLength": 12, + "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "weeklyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" + }, + "dailyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" + }, + "ratePerMile": { + "type": "string", + "maxLength": 12, + "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" + }, + "mileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" + }, + "extraMileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "lateFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" + }, + "towingCharge": { + "type": "string", + "maxLength": 4, + "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" + }, + "extraCharge": { + "type": "string", + "maxLength": 12, + "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" + }, + "gpsCharge": { + "type": "string", + "maxLength": 12, + "description": "Amount charged for renting a Global Positioning Service (GPS).\n" + }, + "phoneCharge": { + "type": "string", + "maxLength": 12, + "description": "Additional charges incurred for phone usage included on the total bill.\n" + }, + "parkingViolationCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" + }, + "otherCharges": { + "type": "string", + "maxLength": 12, + "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" + } + } + }, + "lodging": { + "type": "object", + "properties": { + "checkInDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "checkOutDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "room": { + "type": "array", + "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", + "items": { + "type": "object", + "properties": { + "dailyRate": { + "type": "string", + "maxLength": 8, + "description": "Daily cost of the room.\n" + }, + "numberOfNights": { + "type": "integer", + "minimum": 1, + "maximum": 9999, + "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" + } + } + } + }, + "smokingPreference": { + "type": "string", + "maxLength": 1, + "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" + }, + "numberOfRooms": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of rooms booked by the cardholder.\n" + }, + "numberOfGuests": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of guests staying in the room.\n" + }, + "roomBedType": { + "type": "string", + "maxLength": 12, + "description": "Type of room, such as queen, king, or two doubles.\n" + }, + "roomTaxType": { + "type": "string", + "maxLength": 10, + "description": "Type of tax, such as tourist or hotel.\n" + }, + "roomRateType": { + "type": "string", + "maxLength": 12, + "description": "Type of rate, such as corporate or senior citizen.\n" + }, + "guestName": { + "type": "string", + "maxLength": 40, + "description": "Name of the guest under which the room is reserved.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Your toll-free customer service phone number.\n" + }, + "corporateClientCode": { + "type": "string", + "maxLength": 17, + "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" + }, + "additionalDiscountAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of an additional coupon or discount.\n" + }, + "roomLocation": { + "type": "string", + "maxLength": 10, + "description": "Location of room, such as lake view or ocean view.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 1, + "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" + }, + "totalTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount.\n" + }, + "prepaidCost": { + "type": "string", + "maxLength": 12, + "description": "Prepaid amount, such as a deposit.\n" + }, + "foodAndBeverageCost": { + "type": "string", + "maxLength": 12, + "description": "Cost for all food and beverages.\n" + }, + "roomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax for the room.\n" + }, + "adjustmentAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" + }, + "phoneCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of telephone services.\n" + }, + "restaurantCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of restaurant purchases\n" + }, + "roomServiceCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of room service.\n" + }, + "miniBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of mini-bar purchases.\n" + }, + "laundryCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of laundry services.\n" + }, + "miscellaneousCost": { + "type": "string", + "maxLength": 12, + "description": "Miscellaneous costs.\n" + }, + "giftShopCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of gift shop purchases.\n" + }, + "movieCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of movies.\n" + }, + "healthClubCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of health club services.\n" + }, + "valetParkingCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of valet parking services.\n" + }, + "cashDisbursementCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of the cash that was disbursed plus any associated service fees\n" + }, + "nonRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of non-room purchases, such as meals and gifts.\n" + }, + "businessCenterCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of business center services.\n" + }, + "loungeBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of lounge and bar purchases.\n" + }, + "transportationCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of transportation services.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 12, + "description": "Gratuity.\n" + }, + "conferenceRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of conference room services.\n" + }, + "audioVisualCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of audio visual services.\n" + }, + "banquestCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of banquet services.\n" + }, + "nonRoomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax on non-room purchases.\n" + }, + "earlyCheckOutCost": { + "type": "string", + "maxLength": 12, + "description": "Service fee for early departure.\n" + }, + "internetAccessCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of Internet access.\n" + } + } + }, + "transit": { + "type": "object", + "properties": { + "airline": { + "type": "object", + "properties": { + "bookingReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" + }, + "carrierName": { + "type": "string", + "maxLength": 15, + "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "ticketIssuer": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 4, + "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" + }, + "name": { + "type": "string", + "maxLength": 20, + "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" + }, + "address": { + "type": "string", + "maxLength": 16, + "description": "Address of the company issuing the ticket.\n" + }, + "locality": { + "type": "string", + "maxLength": 18, + "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 18, + "description": "State in which transaction occured.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Zip code of the city in which transaction occured.\n" + }, + "country": { + "type": "string", + "maxLength": 18, + "description": "Country in which transaction occured.\n" + } + } + }, + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "checkDigit": { + "type": "string", + "maxLength": 1, + "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" + }, + "restrictedTicketIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "transactionType": { + "type": "integer", + "maxLength": 2, + "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" + }, + "extendedPaymentCode": { + "type": "string", + "maxLength": 3, + "description": "The field is not currently supported.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 42, + "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" + }, + "customerCode": { + "type": "string", + "maxLength": 40, + "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "documentType": { + "type": "string", + "maxLength": 1, + "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" + }, + "documentNumber": { + "type": "string", + "maxLength": 14, + "description": "The field is not currently supported.\n" + }, + "documentNumberOfParts": { + "type": "integer", + "maxLength": 4, + "description": "The field is not currently supported.\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 25, + "description": "Invoice number for the airline transaction.\n" + }, + "invoiceDate": { + "type": "integer", + "maxLength": 8, + "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" + }, + "additionalCharges": { + "type": "string", + "maxLength": 20, + "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" + }, + "totalFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingSequence": { + "type": "string", + "maxLength": 2, + "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" + }, + "totalClearingAmount": { + "type": "string", + "maxLength": 20, + "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationSystemCode": { + "type": "string", + "maxLength": 4, + "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "processIdentifier": { + "type": "string", + "maxLength": 3, + "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" + }, + "ticketIssueDate": { + "type": "string", + "maxLength": 8, + "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" + }, + "electronicTicketIndicator": { + "type": "boolean", + "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" + }, + "originalTicketNumber": { + "type": "string", + "maxLength": 14, + "description": "Original ticket number when the transaction is for a replacement ticket.\n" + }, + "purchaseType": { + "type": "string", + "maxLength": 3, + "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 1, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" + }, + "ticketChangeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" + }, + "planNumber": { + "type": "string", + "maxLength": 1, + "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" + }, + "arrivalDate": { + "type": "string", + "maxLength": 8, + "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" + }, + "restrictedTicketDesciption": { + "type": "string", + "maxLength": 20, + "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" + }, + "exchangeTicketAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" + }, + "exchangeTicketFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationType": { + "type": "string", + "maxLength": 32, + "description": "The field is not currently supported.\n" + }, + "boardingFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Boarding fee.\n" + }, + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "carrierCode": { + "type": "string", + "maxLength": 4, + "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "flightNumber": { + "type": "string", + "maxLength": 6, + "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "originatingAirportCode": { + "type": "string", + "maxLength": 5, + "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "class": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "stopoverIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureDate": { + "type": "integer", + "maxLength": 8, + "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "destinationAirportCode": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "fareBasis": { + "type": "string", + "maxLength": 15, + "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" + }, + "departTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of departure tax for this leg of the trip.\n" + }, + "conjunctionTicket": { + "type": "string", + "maxLength": 25, + "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "exchangeTicketNumber": { + "type": "string", + "maxLength": 25, + "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "couponNumber": { + "type": "string", + "maxLength": 1, + "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "departureTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "arrivalTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "arrivalTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "endorsementsRestrictions": { + "type": "string", + "maxLength": 20, + "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "totalFareAmount": { + "type": "string", + "maxLength": 15, + "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "feeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + } + } + } + }, + "ancillaryInformation": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 20, + "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" + }, + "connectedTicketNumber": { + "type": "string", + "maxLength": 15, + "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 15, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "service": { + "type": "array", + "items": { + "type": "object", + "properties": { + "categoryCode": { + "type": "string", + "maxLength": 4, + "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "subCategoryCode": { + "type": "string", + "maxLength": 4, + "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" + } + } + } + } + } + } + } + } + } + } + } + }, + "promotionInformation": { + "type": "object", + "properties": { + "additionalCode": { + "type": "string", + "maxLength": 12, + "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" + }, + "code": { + "type": "string", + "maxLength": 12, + "description": "Code for a promotion or discount.\n" + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "Testing-VDP-Payments-Refund" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The capture ID. This ID is returned from a previous capture request.", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2CapturesRefundsPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + }, + "void": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "refundAmountDetails": { + "type": "object", + "properties": { + "refundAmount": { + "type": "string", + "maxLength": 15, + "description": "Total amount of the refund." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + }, + "transactionId": { + "type": "string", + "maxLength": 18, + "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" + }, + "forwardedAcquirerCode": { + "type": "string", + "maxLength": 32, + "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" + }, + "merchantNumber": { + "type": "string", + "maxLength": 15, + "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "achVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 2, + "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + }, + "resultCodeRaw": { + "type": "string", + "maxLength": 10, + "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + } + } + }, + "networkTransactionId": { + "type": "string", + "description": "Same value as `processorInformation.transactionId`" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "invoiceDetails": { + "type": "object", + "properties": { + "level3TransmissionStatus": { + "type": "boolean", + "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/refunds/4963014779006178301545", + "method": "GET" + }, + "void": { + "href": "/pts/v2/refunds/4963014779006178301545/voids", + "method": "POST" + } + }, + "id": "4963014779006178301545", + "submitTimeUtc": "2017-06-01T071757Z", + "status": "200", + "reconciliationId": "39571012D3DFEKS0", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "Testing-VDP-Payments-Refund" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "refundAmountDetails": { + "currency": "USD", + "refundAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "ptsV2CapturesRefundsPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2CapturesRefundsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Refund a Capture", + "value": { + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "102.21", + "currency": "USD" + } + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments/{id}/captures", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/credits": { + "post": { + "summary": "Process a Credit", + "description": "POST to the credit resource to credit funds to a specified credit card.", + "tags": [ + "credit" + ], + "operationId": "createCredit", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "createCreditRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "processorId": { + "type": "string", + "maxLength": 3, + "description": "Value that identifies the processor/acquirer to use for the transaction. This value is supported only for\n**CyberSource through VisaNet**.\n\nContact CyberSource Customer Support to get the value for this field.\n" + }, + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "linkId": { + "type": "string", + "maxLength": 26, + "description": "Value that links the current authorization request to the original authorization request. Set this value\nto the ID that was returned in the reply message from the original authorization request.\n\nThis value is used for:\n\n- Partial authorizations\n- Split shipments\n\nFor details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "reportGroup": { + "type": "string", + "maxLength": 25, + "description": "Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**.\n\nFor details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + }, + "purchaseLevel": { + "type": "string", + "maxLength": 1, + "description": "Set this field to 3 to indicate that the request includes Level III data." + }, + "industryDataType": { + "type": "string", + "maxLength": 20, + "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, + "walletType": { + "type": "string", + "maxLength": 5, + "description": "This field carries the wallet type in authorization requests and credit requests. Possible value are:\n- `101`: Masterpass remote payment. The customer created the wallet by manually interacting with a customer-controlled device such as a computer, tablet, or phone. This value is supported only for Masterpass transactions on Chase Paymentech Solutions and CyberSource through VisaNet.\n- `102`: Masterpass remote near field communication (NFC) payment. The customer created the wallet by tapping a PayPass card or customer-controlled device at a contactless card reader. This value is supported only for card-present Masterpass transactions on CyberSource through VisaNet.\n- `103`: Masterpass Apple Pay payment. The payment was made with a combination of Masterpass and Apple Pay. This value is supported only for Masterpass Apple Pay transactions on CyberSource through VisaNet.\n- `216`: Masterpass Google Pay payment. The payment was made with a combination of Masterpass and Google Pay. This value is supported only for Masterpass Google Pay transactions on CyberSource through VisaNet.\n- `217`: Masterpass Samsung Pay payment. The payment was made with a combination of Masterpass and Samsung Pay. This value is supported only for Masterpass Samsung Pay transactions on CyberSource through VisaNet.\n- `SDW`: Staged digital wallet. An issuer or operator created the wallet. This value is supported only for Masterpass transactions on Chase Paymentech Solutions.\n- `VCIND`: Visa Checkout payment. This value is supported only on CyberSource through VisaNet, FDC Compass, FDC Nashville Global, FDI Australia, and TSYS Acquiring Solutions. See Getting Started with Visa Checkout. For Visa Checkout transactions, the way CyberSource processes the value for this field depends on the processor. See the Visa Checkout section below.\nFor all other values, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nMasterpass (101, 102, 103, 216, and 217): The Masterpass platform generates the wallet type value and passes it to you along with the customer\u2019s checkout information.\n\nVisa Checkout:\nThis field is optional for Visa Checkout authorizations on FDI Australia. For all other processors, this field is required for Visa Checkout authorizations.\nFor Visa Checkout transactions on the following processors, CyberSource sends the value that the processor expects for this field:FDC Compass,FDC Nashville Global,FDI Australia,TSYS Acquiring\nSolutions For all other processors, this field is a passthrough; therefore, CyberSource does not verify the value or modify it in any way before sending it to the processor.\nFor incremental authorizations, this field is supported only for Mastercard and the supported values are 101 and 102.\nPayment card companies can introduce new values without notice. Your order management system should be able to process new values without problems.\n\nCyberSource through VisaNet\nWhen the value for this field is 101, 102, 103, 216, or 217, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR6, Position: 88-90, Field: Mastercard Wallet Identifier.\nWhen the value for this field is VCIND, it corresponds to the following data in the TC 33 capture file5: Record: CP01 TCR8, Position: 72-76, Field: Agent Unique ID.\n" + }, + "nationalNetDomesticData": { + "type": "string", + "maxLength": 123, + "description": "Supplementary domestic transaction information provided by the acquirer for National Net Settlement Service (NNSS) transactions. NNSS is a settlement service that Visa provides.\nFor transactions on CyberSource through VisaNet in countries that subscribe to NNSS:\nVisaNet clears transactions; VisaNet transfers funds to the acquirer after deducting processing fees and interchange fees.\nVisaNet settles transactions in the local pricing currency through a local financial institution.\nThis field is supported only on CyberSource through VisaNet for domestic data in Colombia\n" + }, + "networkRoutingOrder": { + "type": "string", + "maxLength": 30, + "description": "On PIN Debit Gateways: This U.S.-only field is optionally used by participants (merchants and acquirers) to specify the network access priority.\nVisaNet checks to determine if there are issuer routing preferences for any of the networks specified by the sharing group code.\nIf an issuer preference exists for one of the specified debit networks, VisaNet makes a routing selection based on the issuer\u2019s preference.\nIf an issuer preference exists for more than one of the specified debit networks, or if no issuer preference exists,\nVisaNet makes a selection based on the acquirer\u2019s routing priorities.\n\n#### PIN debit\nPriority order of the networks through which he transaction will be routed. Set this value to a series of one-character network codes in your preferred order. This is a list of the network codes:\n\n| Network | Code |\n| --- | --- |\n| Accel | E |\n| AFFN | U |\n| Alaska Option | 3 |\n| CU24 | C |\n| Interlink | G |\n| Maestro | 8 |\n| NETS | P |\n| NYCE | F |\n| Pulse | H |\n| Shazam | 7 |\n| Star | M |\n| Visa | V |\n\nFor example, if the Star network is your first preference and Pulse is your second preference, set this field to a value of `MH`.\n\nWhen you do not include this value in your PIN debit request, the list of network codes from your account is used.\n**Note** This field is supported only for businesses located in the U.S.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "recurringOptions": { + "type": "object", + "properties": { + "loanPayment": { + "type": "boolean", + "description": "Flag that indicates whether this is a payment towards an existing contractual loan.\n\nPossible values:\n- `true`: Loan payment\n- `false`: (default) Not a loan payment\n\nFor processor-specific details, see `debt_indicator` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n", + "default": false + } + } + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "customerMemo": { + "type": "string", + "maxLength": 80, + "description": "Payment related information.\n\nThis information is included on the customer\u2019s statement.\n" + }, + "secCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nAccepts only the following values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "terminalCity": { + "type": "string", + "maxLength": 4, + "description": "City in which the terminal is located. If more than four alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" + }, + "terminalState": { + "type": "string", + "maxLength": 2, + "description": "State in which the terminal is located. If more than two alphanumeric characters are submitted, the transaction\nwill be declined.\n\nYou cannot include any special characters.\n" + }, + "effectiveDate": { + "type": "string", + "maxLength": 8, + "description": "Effective date for the transaction. The effective date must be within 45 days of the current day. If you do not\ninclude this value, CyberSource sets the effective date to the next business day.\n\nFormat: `MMDDYYYY`\n\nSupported only for the CyberSource ACH Service.\n" + }, + "partialPaymentId": { + "type": "string", + "maxLength": 25, + "description": "Identifier for a partial payment or partial credit.\n\nThe value for each debit request or credit request must be unique within the scope of the order.\nFor details, see `partial_payment_id` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "settlementMethod": { + "type": "string", + "maxLength": 1, + "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "purchaseOptions": { + "type": "object", + "properties": { + "isElectronicBenefitsTransfer": { + "type": "boolean", + "description": "Flag that indicates whether this transaction is an EBT transaction. Possible values:\n- `true`\n- `false`\n\n#### PIN debit\nRequired field for EBT and EBT voucher transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" + } + } + }, + "electronicBenefitsTransfer": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 4, + "description": "Flag that specifies the category for the EBT transaction.\n\nPossible values:\n- `CASH`: Cash benefits, which can be used to purchase any item at a participating retailer, as well as to obtain cash-back or make a cash withdrawal from a participating ATM.\n- `FOOD`: Food stamp benefits, which can be used only to purchase food items authorized by the USDA SNAP program.\n\n#### PIN debit\nRequired field for EBT transactions that use PIN debit credit or PIN debit purchase; otherwise, not used.\n" + } + } + }, + "loanOptions": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 20, + "description": "Type of loan based on an agreement between you and the issuer.\nExamples: AGROCUSTEIO, AGRO-INVEST, BNDES-Type1, CBN, FINAME.\nThis field is supported only for these kinds of payments:\n- BNDES transactions on CyberSource through VisaNet.\n- Installment payments with Mastercard on CyberSource through VisaNet in Brazil.\n\nSee \"\"Installment Payments on CyberSource through VisaNet,\"\" in the SCMP/SO guide\n\nFor BNDES transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR2, Position: 27-46, Field: Loan Type\n\nFor installment payments with Mastercard in Brazil, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP07 TCR4, Position: 5-24,Field: Financing Type\n" + }, + "assetType": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a loan is for a recoverable item or a non-recoverable item.\nPossible values:\n- `N`: non-recoverable item\n- `R`: recoverable item\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n Record: CP07 TCR2, Position: 26, Field: Asset Indicator\n" + } + } + }, + "japanPaymentOptions": { + "type": "object", + "properties": { + "paymentMethod": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" + }, + "installments": { + "type": "string", + "maximum": 99, + "description": "Number of Installments.\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "accountEncoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 5, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "sourceAccountType": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" + }, + "sourceAccountTypeDetails": { + "type": "string", + "maxLength": 4, + "description": "Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP).\nPossible values for line of credit:\n- `AGRC`: Visa Agro Custeio\n- `AGRE`: Visa Agro Electron\n- `AGRI`: Visa Agro Investimento\n- `AGRO`: Visa Agro\nPossible values for prepaid card:\n- `VVA`: Visa Vale Alimentacao\n- `VVF`: Visa Vale Flex\n- `VVR`: Visa Vale Refeicao\nThis field is supported only for combo card transactions in Brazil on CyberSource through VisaNet.\n" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 1, + "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" + }, + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "encoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "checkNumber": { + "type": "string", + "maxLength": 8, + "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" + }, + "checkImageReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Image reference number associated with the check. You cannot include any special characters.\n" + } + } + }, + "routingNumber": { + "type": "string", + "maxLength": 9, + "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "iban": { + "type": "string", + "maxLength": 50, + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "cryptogram": { + "type": "string", + "maxLength": 255, + "description": "This field contains token information." + }, + "requestorId": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\n#### PIN debit\nOptional field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "assuranceLevel": { + "type": "string", + "maxLength": 2, + "description": "Confidence level of the tokenization. This value is assigned by the token service provider.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n\nReturned by PIN debit credit or PIN debit purchase.\n" + }, + "storageMethod": { + "type": "string", + "maxLength": 3, + "description": "Type of technology used in the device to store token data. Possible values:\n\n- `001`: Secure Element (SE). Smart card or memory with restricted access and encryption to prevent data tampering. For storing payment\n credentials, a SE is tested against a set of requirements defined by the payment networks.\n\n **Note** This field is supported only for _FDC Compass_.\n\n- 002: Host Card Emulation (HCE). Emulation of a smart card by using software to create a virtual and exact representation of the card.\nSensitive data is stored in a database that is hosted in the cloud. For storing payment credentials, a database\nmust meet very stringent security requirements that exceed PCI DSS.\n\n**Note** This field is supported only for _FDC Compass_.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "securityCodeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a CVN code was sent. Possible values:\n\n - `0` (default): CVN service not requested. This default value is used when you do not include\n `securityCode` field in the request.\n - `1` (default): CVN service requested and supported. This default value is used when you include\n `securityCode` field in the request.\n - `2`: CVN on credit card is illegible.\n - `9`: CVN was not imprinted on credit card.\n\n#### FDMS Nashville\nRequired for American Express cards; otherwise, optional.\n\n#### TSYS Acquiring Solutions\nOptional if `pointOfSaleInformation.entryMode=keyed`; otherwise, not used.\n\n#### All other processors\nOptional.\n" + } + } + }, + "fluidData": { + "type": "object", + "properties": { + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 12, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "legacyToken": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 16, + "maxLength": 22 + } + } + }, + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + }, + "eWallet": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "maxLength": 26, + "description": "The ID of the customer, passed in the return_url field by PayPal after customer approval." + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "dutyAmount": { + "type": "string", + "maxLength": 15, + "description": "Total charges for any import or export duties included in the order.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 13, + "description": "Gratuity or tip amount for restaurants. Allowed only when industryDatatype=restaurant.\nWhen your customer uses a debit card or prepaid card, and you receive a partial authorization, the payment networks recommend that you do not\nsubmit a capture amount that is higher than the authorized amount. When the capture amount exceeds the partial amount that was approved, the\nissuer has chargeback rights for the excess amount.\n\nUsed by **Capture**\nOptional field.\n\n#### CyberSource through VisaNet\nRestaurant data is supported only on CyberSource through VisaNet when card is present.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n" + }, + "nationalTaxIncluded": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates whether a national tax is included in the order total.\n\nPossible values:\n\n - **0**: national tax not included\n - **1**: national tax included\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how the merchant manages discounts.\n\nPossible values:\n\n - **0**: no invoice level discount included\n - **1**: tax calculated on the postdiscount invoice total\n - **2**: tax calculated on the prediscount invoice total\n" + }, + "taxAppliedLevel": { + "type": "string", + "maxLength": 1, + "description": "Flag that indicates how you calculate tax.\n\nPossible values:\n\n - **0**: net prices with tax calculated at line item level\n - **1**: net prices with tax calculated at invoice level\n - **2**: gross prices with tax provided at line item level\n - **3**: gross prices with tax provided at invoice level\n - **4**: no tax applies on the invoice for the transaction\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 3, + "description": "For tax amounts that can be categorized as one tax type.\n\nThis field contains the tax type code that corresponds to the entry in the _lineItems.taxAmount_ field.\n\nPossible values:\n\n - **056**: sales tax (U.S only)\n - **TX~**: all taxes (Canada only) Note ~ = space.\n" + }, + "freightAmount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "foreignAmount": { + "type": "string", + "maxLength": 15, + "description": "Set this field to the converted amount that was returned by the DCC provider.\nFor processor-specific information, see the `foreign_amount` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "foreignCurrency": { + "type": "string", + "maxLength": 5, + "description": "Set this field to the converted amount that was returned by the DCC provider.\n" + }, + "exchangeRate": { + "type": "string", + "maxLength": 13, + "description": "Exchange rate returned by the DCC service. Includes a decimal point and a maximum of 4 decimal places.\n\nFor details, see `exchange_rate` request-level field description in the [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf)\n" + }, + "exchangeRateTimeStamp": { + "type": "string", + "maxLength": 14, + "description": "Time stamp for the exchange rate. This value is returned by the DCC service.\n\nFormat: `YYYYMMDD~HH:MM` where ~ denotes a space.\n" + }, + "amexAdditionalAmounts": { + "type": "array", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Additional amount type. This field is supported only for **American Express Direct**.\n\nFor processor-specific information, see the `additional_amount_type0` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "amount": { + "type": "string", + "maxLength": 12, + "description": "Additional amount. This field is supported only for **American Express Direct**.\n" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + }, + "serviceFeeAmount": { + "type": "string", + "maxLength": 15, + "description": "Service fee. Required for service fee transactions.\n" + }, + "originalCurrency": { + "type": "string", + "maxLength": 15, + "description": "Your local pricing currency code.\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "cashbackAmount": { + "type": "string", + "maxLength": 13, + "description": "Cashback amount in the acquirer\u2019s currency. If a cashback amount is included in the request, it must be included\nin the `orderInformation.amountDetails.totalAmount` value.\n\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization**\nOptional.\n**Authorization Reversal**\nOptional.\n\n#### PIN debit\nRequired field for PIN debit purchase, PIN debit credit or PIN debit reversal.\n" + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "company": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "address1": { + "type": "string", + "maxLength": 40, + "description": "First line in the street address of the company purchasing the product." + }, + "address2": { + "type": "string", + "maxLength": 40, + "description": "Additional address information for the company purchasing the product." + }, + "locality": { + "type": "string", + "maxLength": 30, + "description": "City in the address of the company purchasing the product." + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State or province in the address of the company purchasing the product. Use the State, Province, and Territory\nCodes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code in the address of the company purchasing the product. The postal code must consist of 5 to 9 digits.\n\nWhen the company country is the U.S., the 9-digit postal code must follow this format:\n**[5 digits][dash][4 digits]**\n#### Example\n`12345-6789`\n\nWhen the company country is Canada, the 6-digit postal code must follow this format:\n**[alpha][numeric][alpha][space][numeric][alpha][numeric]**\n#### Example\n`A1B 2C3`\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Country in the address of the company purchasing the product. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + } + } + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "unitOfMeasure": { + "type": "string", + "maxLength": 12, + "description": "Unit of measure, or unit of measure code, for the item.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + }, + "taxRate": { + "type": "string", + "maxLength": 7, + "description": "Tax rate applied to the item.\n\nFor details, see `tax_rate` field description in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n\n**Visa**: Valid range is 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated).\n\n**Mastercard**: Valid range is 0.00001 to 0.99999 (0.001% to 99.999%).\n" + }, + "taxAppliedAfterDiscount": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate how you handle discount at the line item level.\n\n - 0: no line level discount provided\n - 1: tax was calculated on the post-discount line item total\n - 2: tax was calculated on the pre-discount line item total\n\n`Note` Visa will inset 0 (zero) if an invalid value is included in this field.\n\nThis field relates to the value in the _lineItems[].discountAmount_ field.\n" + }, + "taxStatusIndicator": { + "type": "string", + "maxLength": 1, + "description": "Flag to indicate whether tax is exempted or not included.\n\n - 0: tax not included\n - 1: tax included\n - 2: transaction is not subject to tax\n" + }, + "taxTypeCode": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "amountIncludesTax": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount is included in the Line Item Total.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "typeOfSupply": { + "type": "string", + "maxLength": 2, + "description": "Flag to indicate whether the purchase is categorized as goods or services.\nPossible values:\n\n - 00: goods\n - 01: services\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 13, + "description": "Discount applied to the item." + }, + "discountApplied": { + "type": "boolean", + "description": "Flag that indicates whether the amount is discounted.\n\nIf you do not provide a value but you set Discount Amount to a value greater than zero, then CyberSource sets\nthis field to **true**.\n\nPossible values:\n - **true**\n - **false**\n" + }, + "discountRate": { + "type": "string", + "maxLength": 6, + "description": "Rate the item is discounted. Maximum of 2 decimal places.\n\nExample 5.25 (=5.25%)\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 23, + "description": "Field to support an invoice number for a transaction. You must specify the number of line items that will\ninclude an invoice number. By default, the first line item will include an invoice number field. The invoice\nnumber field can be included for up to 10 line items.\n" + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "code": { + "type": "string", + "maxLength": 4, + "description": "Type of tax being applied to the item.\n\nFor possible values, see the processor-specific field descriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/):\n\n#### FDC Nashville Global\n- `alternate_tax_type_applied`\n- `alternate_tax_type_identifier`\n\n#### Worldpay VAP\n- `alternate_tax_type_identifier`\n\n#### RBS WorldPay Atlanta\n- `tax_type_applied`\n\n#### TSYS Acquiring Solutions\n- `tax_type_applied`\n- `local_tax_indicator`\n\n#### Chase Paymentech Solutions\n- `tax_type_applied`\n\n#### Elavon Americas\n- `local_tax_indicator`\n\n#### FDC Compass\n- `tax_type_applied`\n\n#### OmniPay Direct\n- `local_tax_indicator`\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your tax ID number to use for the alternate tax amount. Required if you set alternate tax amount to any value,\nincluding zero. You may send this field without sending alternate tax amount.\n\nFor processor-specific details, see `alternate_tax_id` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the alternate tax amount (`orderInformation.amountDetails.taxDetails[].amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: alternate tax amount is not included in the request.\n- `true`: alternate tax amount is included in the request.\n\nFor processor-specific details, see `alternate_tax_amount_indicator` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n\nFor possible values and important information for using this field, see _Appendix B, \"Exemption\nStatus Values_ and _Offer-Level Tax Fields_ in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + } + } + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "purchaseOrderNumber": { + "type": "string", + "maxLength": 25, + "description": "Value used by your customer to identify the order. This value is typically a purchase order number. CyberSource\nrecommends that you do not populate the field with all zeros or nines.\n\nFor processor-specific information, see the `user_po` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Date the order was processed. `Format: YYYY-MM-DD`.\n\nFor processor-specific information, see the `purchaser_order_date` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "purchaseContactName": { + "type": "string", + "maxLength": 36, + "description": "The name of the individual or the company contacted for company authorized purchases.\n\nFor processor-specific information, see the `authorized_contact_name` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + }, + "vatInvoiceReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "VAT invoice number associated with the transaction.\n\nFor processor-specific information, see the `vat_invoice_ref_number` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 4, + "description": "International description code of the overall order\u2019s goods or services or the Categorizes purchases for VAT\nreporting. Contact your acquirer for a list of codes.\n\nFor processor-specific information, see the `summary_commodity_code` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "transactionAdviceAddendum": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "maxLength": 40, + "description": "Four Transaction Advice Addendum (TAA) fields. These fields are used to display descriptive information\nabout a transaction on the customer\u2019s American Express card statement. When you send TAA fields, start\nwith amexdata_taa1, then ...taa2, and so on. Skipping a TAA field causes subsequent TAA fields to be\nignored.\n\nTo use these fields, contact CyberSource Customer Support to have your account enabled for this feature.\n" + } + } + } + } + } + }, + "shippingDetails": { + "type": "object", + "properties": { + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the address from which the goods are shipped, which is used to establish nexus. The default is\nthe postal code associated with your CyberSource account.\n\nThe postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code\nmust follow this format:\n\n`[5 digits][dash][4 digits]`\n\nExample 12345-6789\n\nWhen the billing country is Canada, the 6-digit postal code must follow this format:\n\n`[alpha][numeric][alpha][space] [numeric][alpha][numeric]`\n\nExample A1B 2C3\n\nThis field is frequently used for Level II and Level III transactions.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "userAgent": { + "type": "string", + "maxLength": 40, + "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "alternateName": { + "type": "string", + "maxLength": 13, + "description": "An alternate name for the merchant.\n\nFor the descriptions, used-by information, data types, and lengths for these fields, see the `merchant_descriptor_alternate` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\n" + }, + "contact": { + "type": "string", + "maxLength": 14, + "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of merchant's address. For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_street` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "administrativeArea": { + "type": "string", + "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "phone": { + "type": "string", + "maxLength": 13, + "description": "Merchant phone as contact information for CNP transactions\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + }, + "countryOfOrigin": { + "type": "string", + "maxLength": 2, + "description": "#### Visa Platform Connect\nThis field will indicate merchant country of origin\n" + } + } + }, + "categoryCode": { + "type": "integer", + "maximum": 9999, + "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "cardAcceptorReferenceNumber": { + "type": "string", + "maxLength": 25, + "description": "Reference number that facilitates card acceptor/corporation communication and record keeping.\n\nFor processor-specific information, see the `card_acceptor_ref_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxId": { + "type": "string", + "maxLength": 15, + "description": "Your Cadastro Nacional da Pessoa Jur\u00eddica (CNPJ) number.\n\nThis field is supported only for BNDES transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR6\n- Position: 40-59\n- Field: BNDES Reference Field 1\n\nFor details, see `bill_merchant_tax_id` field description in the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "aggregatorInformation": { + "type": "object", + "properties": { + "aggregatorId": { + "type": "string", + "maxLength": 20, + "description": "Value that identifies you as a payment aggregator. Get this value from the\nprocessor.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR6\n- Position: 95-105\n- Field: MasterCard Payment Facilitator ID\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the `aggregator_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "name": { + "type": "string", + "maxLength": 37, + "description": "Your payment aggregator business name.\n\n**American Express Direct**\\\nThe 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.\\\n\n#### CyberSource through VisaNet\nWith 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.\n\n**FDC Compass**\\\nThis value must consist of uppercase characters.\n\nFor processor-specific information, see the aggregator_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "subMerchant": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 37, + "description": "Sub-merchant\u2019s business name.\n\n#### American Express Direct\nThe 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.\n\n#### CyberSource through VisaNet\nWith 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.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\n#### FDC Nashville Global\nWith Mastercard, the maximum length of the sub-merchant name depends on the length of the aggregator name:\n- If aggregator name length is 1 through 3, maximum sub-merchant name length is 21.\n- If aggregator name length is 4 through 7, maximum sub-merchant name length is 17.\n- If aggregator name length is 8 through 12, maximum sub-merchant name length is 12.\n" + }, + "address1": { + "type": "string", + "maxLength": 38, + "description": "First line of the sub-merchant\u2019s street address.\n\nFor processor-specific details, see `submerchant_street` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "locality": { + "type": "string", + "maxLength": 21, + "description": "Sub-merchant\u2019s city.\n\nFor processor-specific details, see `submerchant_city` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s state or province.\n\nFor possible values and also aggregator support, see `submerchant_state` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Partial postal code for the sub-merchant\u2019s address.\n\nFor processor-specific details, see `submerchant_postal_code` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file5.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Sub-merchant\u2019s country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n#### CyberSource through VisaNet\nThe value for this field does not map to the TC 33 capture file.\n\n#### FDC Compass\nThis value must consist of uppercase characters.\n\nFor details, see the `submerchant_country` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "email": { + "type": "string", + "maxLength": 40, + "description": "Sub-merchant\u2019s 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\u2019s 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\u2019s telephone number.\n\n**Maximum length for procesors**\n\n - American Express Direct: 20\n - CyberSource through VisaNet: 20\n - FDC Compass: 13\n - FDC Nashville Global: 10\n\n#### CyberSource through VisaNet\nWith American Express, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCRB\n- Position: 5-24\n- Field: American Express Seller Telephone Number\n\n**FDC Compass**\\\nThis value must consist of uppercase characters. Use one of these recommended formats:\\\n`NNN-NNN-NNNN`\\\n`NNN-AAAAAAA`\n" + }, + "id": { + "type": "string", + "maxLength": 20, + "description": "The ID you assigned to your sub-merchant.\nCyberSource through VisaNet: For American Express transaction, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCRB\n- Position: 65-84\n- Field: American Express Seller ID\nFor Mastercard transactions, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 117-131\n- Field: Mastercard Sub-Merchant ID\nFDC Compass: This value must consist of uppercase characters.\n\nAmerican Express Direct: String (20)\nCyberSource through VisaNet with American Express: String (20)\nCyberSource through VisaNet with Mastercard: String (15)\nFDC Compass: String (20)\nFDC Nashville Global: String (14)\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + }, + "terminalSerialNumber": { + "type": "string", + "maxLength": 32, + "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "cardholderVerificationMethodUsed": { + "type": "integer", + "description": "Method that was used to verify the cardholder's identity. Possible values:\n\n - `0`: No verification\n - `1`: Signature\n - `2`: PIN\n - `3`: Cardholder device CVM\n" + }, + "laneNumber": { + "type": "string", + "maxLength": 8, + "description": "Identifier for an alternate terminal at your retail location. You define the value for this field.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors.\nUse the `terminalId` field to identify the main terminal at your retail location. If your retail location has multiple terminals,\nuse this `laneNumber` field to identify the terminal used for the transaction.\n\nThis field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor.\n\nOptional field.\n\n#### Card present reply messaging\nIdentifier for an alternate terminal at your retail location. You defined the value for this field in the request\nmessage. This value must be printed on the receipt.\n\nThis field is supported only for MasterCard transactions on FDC Nashville Global.\n" + }, + "catLevel": { + "type": "integer", + "minimum": 1, + "maximum": 9, + "description": "Type of cardholder-activated terminal. Possible values:\n\n - 1: Automated dispensing machine\n - 2: Self-service terminal\n - 3: Limited amount terminal\n - 4: In-flight commerce (IFC) terminal\n - 5: Radio frequency device\n - 6: Mobile acceptance terminal\n - 7: Electronic cash register\n - 8: E-commerce device at your location\n - 9: Terminal or cash register that uses a dialup connection to connect to the transaction processing network\n\n#### Chase Paymentech Solutions\nOnly values 1, 2, and 3 are supported.\n\nRequired if `pointOfSaleInformation.terminalID` is included in the request; otherwise, optional.\n\n#### CyberSource through VisaNet\nValues 1 through 6 are supported on\nCyberSource through VisaNet, but some\nacquirers do not support all six values.\n\nOptional field.\n\n#### FDC Nashville Global\nOnly values 7, 8, and 9 are supported.\n\nOptional field for EMV transactions; otherwise, not used.\n\n#### GPN\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### JCN Gateway\nOnly values 6, 7, 8, and 9 are supported.\n\nRequired field.\n\n#### TSYS Acquiring Solutions\nOnly value 6 is supported.\n\nRequired for transactions from mobile devices; otherwise, not used.\n\n#### All other processors\nNot used.\n\nNonnegative integer.\n" + }, + "entryMode": { + "type": "string", + "maxLength": 11, + "description": "Method of entering payment card information into the POS terminal. Possible values:\n\n - `contact`: Read from direct contact with chip card.\n - `contactless`: Read from a contactless interface using chip data.\n - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.\n - `swiped`: Read from credit card magnetic stripe.\n\nThe `contact`, `contactless`, and `msd` values are supported only for EMV transactions.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### Card Present\nCard present information about EMV applies only to credit card processing and PIN debit processing. All other\ncard present information applies only to credit card processing.\n\n#### PIN debit\nRequired for a PIN debit purchase and a PIN debit credit request.\n" + }, + "terminalCapability": { + "type": "integer", + "minimum": 1, + "maximum": 5, + "description": "POS terminal\u2019s capability. Possible values:\n\n - `1`: Terminal has a magnetic stripe reader only.\n - `2`: Terminal has a magnetic stripe reader and manual entry capability.\n - `3`: Terminal has manual entry capability only.\n - `4`: Terminal can read chip cards.\n - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards.\n\nFor an EMV transaction, the value of this field must be `4` or `5`.\n\n#### PIN debit\nRequired for PIN debit purchase and PIN debit credit request.\n\n#### Used by\n**Authorization**\nRequired for the following processors:\n- American Express Direct\n- Chase Paymentech Solutions\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- FDMS Nashville\n- OmniPay Direct\n- SIX\n- Worldpay VAP\n\nOptional for the following processors:\n- CyberSource through VisaNet\n- GPN\n- GPX\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n" + }, + "operatingEnvironment": { + "type": "string", + "maxLength": 1, + "description": "Operating environment.\n\nPossible values for all card types except Mastercard:\n- `0`: No terminal used or unknown environment.\n- `1`: On merchant premises, attended.\n- `2`: On merchant premises, unattended. Examples: oil, kiosks, self-checkout, mobile telephone, personal digital assistant (PDA).\n- `3`: Off merchant premises, attended. Examples: portable POS devices at trade shows, at service calls, or in taxis.\n- `4`: Off merchant premises, unattended. Examples: vending machines, home computer, mobile telephone, PDA.\n- `5`: On premises of cardholder, unattended.\n- `9`: Unknown delivery mode.\n- `S`: Electronic delivery of product. Examples: music, software, or eTickets that are downloaded over the internet.\n- `T`: Physical delivery of product. Examples: music or software that is delivered by mail or by a courier.\n\n#### Possible values for Mastercard:\n- `2`: On merchant premises, unattended, or cardholder terminal. Examples: oil, kiosks, self-checkout, home computer, mobile telephone, personal digital assistant (PDA). Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n- `4`: Off merchant premises, unattended, or cardholder terminal. Examples: vending machines, home computer, mobile telephone, PDA. Cardholder terminal is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThis field is supported only for American Express Direct and CyberSource through VisaNet.\n" + }, + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + }, + "cardholderVerificationMethodUsed": { + "type": "integer", + "description": "Method that was used to verify the cardholder's identity.\n\nPossible values:\n - `0`: No verification\n - `1`: Signature\n\nThis field is supported only on **American Express Direct**.\n" + }, + "cardSequenceNumber": { + "type": "string", + "maxLength": 3, + "description": "Number assigned to a specific card when two or more cards are associated with the same primary account number.\nThis value enables issuers to distinguish among multiple cards that are linked to the same account. This value\ncan also act as a tracking tool when reissuing cards. When this value is available, it is provided by the chip\nreader. When the chip reader does not provide this value, do not include this field in your request.\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is\navailable only on CyberSource through VisaNet and FDC Nashville Global.\n\n#### Used by\nAuthorization: Optional\nPIN Debit processing: Optional\n\n#### GPX\n\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "fallback": { + "type": "boolean", + "maxLength": 5, + "description": "Indicates whether a fallback method was used to enter credit card information into the POS terminal. When a\ntechnical problem prevents a successful exchange of information between a chip card and a chip-capable terminal:\n\n 1. Swipe the card or key the credit card information into the POS terminal.\n 2. Use the pointOfSaleInformation.entryMode field to indicate whether the information was swiped or keyed.\n\n\nPossible values:\n- `true`: Fallback method was used.\n- `false` (default): Fallback method was not used.\n\nThis field is supported only on American Express Direct, Chase Paymentech Solutions, CyberSource through VisaNet,\nFDC Nashville Global, GPN, JCN Gateway, OmniPay Direct, and SIX.\n" + }, + "fallbackCondition": { + "type": "integer", + "description": "Reason for the EMV fallback transaction. An EMV fallback transaction occurs when an EMV transaction fails for\none of these reasons:\n\n - Technical failure: the EMV terminal or EMV card cannot read and process chip data.\n - Empty candidate list failure: the EMV terminal does not have any applications in common with the EMV card.\n EMV terminals are coded to determine whether the terminal and EMV card have any applications in common.\n EMV terminals provide this information to you.\n\nPossible values:\n\n - `1`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal either used information from a successful chip read or it was not a chip transaction.\n - `2`: Transaction was initiated with information from a magnetic stripe, and the previous transaction at the\n EMV terminal was an EMV fallback transaction because the attempted chip read was unsuccessful.\n\nThis field is supported only on **GPN** and **JCN Gateway**.\n**NOTE**: This field is required when an EMV transaction fails for a technical reason. Do not include this field\nwhen the EMV terminal does not have any applications in common with the EMV card.\n" + }, + "isRepeat": { + "type": "boolean", + "description": "#### Visa Platform Connect\nValue \u201ctrue\u201d indicates this transaction is intentionally duplicated . The field contains value \u201ctrue\u201d which\nindicates that merchant has intentionally duplicated single tap transaction. Merchant is intentionally sending\na duplicate auth request for a single tap txn because the issuer requested a PIN.\n" + } + } + }, + "amexCapnData": { + "type": "string", + "maxLength": 15, + "description": "Point-of-sale details for the transaction. This value is returned only for **American Express Direct**.\nCyberSource generates this value, which consists of a series of codes that identify terminal capability,\nsecurity data, and specific conditions present at the time the transaction occurred. To comply with the CAPN\nrequirements, this value must be included in all subsequent follow-on requests, such as captures and follow-on\ncredits.\n\nWhen you perform authorizations, captures, and credits through CyberSource, CyberSource passes this value from\nthe authorization service to the subsequent services for you. However, when you perform authorizations through\nCyberSource and perform subsequent services through other financial institutions, you must ensure that your\nrequests for captures and credits include this value.\n\nFor details, see `auth_pos_data` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "trackData": { + "type": "string", + "description": "Card\u2019s track 1 and 2 data. For all processors except FDMS Nashville, this value consists of\none of the following:\n\n - Track 1 data\n - Track 2 data\n - Data for both tracks 1 and 2\n\nFor FDMS Nashville, this value consists of one of the following:\n - Track 1 data\n - Data for both tracks 1 and 2\n\nExample: %B4111111111111111^SMITH/JOHN ^1612101976110000868000000?;4111111111111111=16121019761186800000?\n\n#### Used by\n**Authorization**\nRequired for Chase Paymentech Solutions, Credit Mutuel-CIC, CyberSource through VisaNet, FDC Nashville Global,\nJCN Gateway, OmniPay Direct, and SIX if `pointOfSaleInformation.entryMode` is equal to one of these values:\n- `contact`\n- `contactless`\n- `msd`\n- `swiped`\nOtherwise, this field not used.\n\nRequired for all other processors if `pointOfSaleInformation.entryMode=swiped`; otherwise, this field is not used.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### PIN debit\nTrack 2 data from the debit card. The sentinels are required.\nRequired field for a PIN debit purchase and a PIN debit credit.\n" + }, + "storeAndForwardIndicator": { + "type": "string", + "maxLength": 1, + "description": "When connectivity is unavailable, the client software that is installed on the POS terminal can store a\ntransaction in its memory and send it for authorization when connectivity is restored. This value is provided by\nthe client software that is installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\nPossible values:\n- `Y`: Transaction was stored and then forwarded.\n- `N` (default): Transaction was not stored and then forwarded.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "cardholderVerificationMethod": { + "type": "array", + "items": { + "type": "string", + "example": [ + "PIN", + "Signature", + "pinOnGlass" + ] + }, + "description": "Complete list of cardholder verification methods (CVMs) supported by the terminal.\nOptional field.\nPossible values:\n- `PIN`: For terminals with a PIN Pad\n- `Signature`: For terminals capable of receiving a signature\n- `pinOnGlass`: For terminals where PIN is entered on a glass-based capture mechanism\n\n**EXAMPLE**: [\"PIN\",\"Signature\"]; [\"pinOnGlass\",\"Signature\"]\n" + }, + "terminalInputCapability": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Complete list of card input methods supported by the terminal.\n\nPossible values:\n- `Keyed`: Terminal can accept card data that is entered manually.\n- `Swiped`: Terminal can accept card data from a magnetic stripe reader.\n- `Contact`: Terminal can accept card data in EMV contact mode (\"dipping a card\").\n- `Contactless`: Terminal can accept card data in EMV contactless mode (\"tapping a card\").\n- `BarCode`: Terminal can read bar codes.\n- `QRcode`: Terminal can read or scan QR codes.\n- `OCR`: Terminal can perform optical character recognition (OCT) on the card.\n\n**EXAMPLE**: [\"Keyed\",\"Swiped\",\"Contact\",\"Contactless\"]\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "terminalCardCaptureCapability": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the terminal can capture the card.\n\nPossible values:\n- `1`: Terminal can capture card.\n- `0`: Terminal cannot capture card.\n\nFor authorizations and credits, this field is supported only by these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n\nOptional field.\n" + }, + "terminalOutputCapability": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the terminal can print or display messages.\n\nPossible values:\n- 1: Neither\n- 2: Print only\n- 3: Display only\n- 4: Print and display\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "terminalPinCapability": { + "type": "integer", + "description": "Maximum PIN length that the terminal can capture.\n\nPossible values:\n- 0: No PIN capture capability\n- 1: PIN capture capability unknown\n- 4: Four characters\n- 5: Five characters\n- 6: Six characters\n- 7: Seven characters\n- 8: Eight characters\n- 9: Nine characters\n- 10: Ten characters\n- 11: Eleven characters\n- 12: Twelve characters\n\nThis field is supported for authorizations and credits only on the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- OmniPay Direct\n- SIX\n\nRequired field for authorization or credit of PIN transactions.\n" + }, + "deviceId": { + "type": "string", + "maxLength": 32, + "description": "Value created by the client software that uniquely identifies the POS device. This value is provided by the\nclient software that is installed on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + }, + "pinBlockEncodingFormat": { + "type": "integer", + "maximum": 9, + "description": "Format that is used to encode the PIN block. This value is provided by the client software that is installed on\nthe POS terminal.\n\nPossible values:\n- `0`: ISO 9564 format 0\n- `1`: ISO 9564 format 1\n- `2`: ISO 9564 format 2\n- `3`: ISO 9564 format 3\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also supported by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n\n#### GPX\nFor chip and online PIN transactions for authorization, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Offline PIN\n- Chip and Signature\n\nFor PIN Debit Purchase and Credit Service transactions, GPX supports the following EMV Cards and Cardholder Verification Methods (CVMs):\n- Chip and Online PIN\n" + }, + "encryptedPin": { + "type": "string", + "maxLength": 16, + "description": "Encrypted PIN.\n\nThis value is provided by the client software that is installed on the POS terminal.\n\n#### Used by\n**Authorization, PIN Debit**\nRequired when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\nRequired for PIN debit credit or PIN debit purchase.\nRequired for online PIN transactions.\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" + }, + "encryptedKeySerialNumber": { + "type": "string", + "maxLength": 20, + "description": "Combination of the device's unique identifier and a transaction counter that is used in the process of\ndecrypting the encrypted PIN. The entity that injected the PIN encryption keys into the terminal decrypts the\nencrypted PIN and creates this value.\n\nFor all terminals that are using derived unique key per transaction (DUKPT) encryption, this is generated as a\nsingle number within the terminal.\n\n#### Used by\n**Authorization, PIN Debit**\n- Required when the cardholder enters a PIN and the card cannot verify the PIN, which means that the issuer must verify the PIN.\n- Required for PIN debit credit or PIN debit purchase.\n- Required for online PIN transactions\n\nFor authorizations, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nThis field is also used by processors that support chip and online PIN transactions. The following table lists the EMV Cards\nand Cardholder Verification Methods (CVMs) that these processors support:\n\n| Processor | Chip and Offline PIN | Chip and Online PIN | Chip and Signature |\n| --- | --- | --- | --- |\n| American Express Direct | Yes | Yes | Yes |\n| Chase Paymentech Solutions | No | No | Yes |\n| Credit Mutuel-CIC | Yes | Yes | Yes |\n| CyberSource through VisaNet | Yes | No | Yes |\n| FDC Nashville Global | Yes | Yes | Yes |\n| GPN | No | No | Yes |\n| OmniPay Direct | Yes | No | Yes |\n| SIX | Yes | Yes | Yes |\n" + }, + "partnerSdkVersion": { + "type": "string", + "maxLength": 32, + "description": "Version of the software installed on the POS terminal. This value is provided by the client software that is\ninstalled on the POS terminal.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n\nFor authorizations and credits, this field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "emvApplicationIdentifierAndDedicatedFileName": { + "type": "string", + "maxLength": 32, + "description": "This 32 byte length-maximum EBCDIC-K value is used to identify which chip application was performed between the terminal and the chip product.\nThe included values are the Application Identifier (AID) and the Dedicated File (DF) name. It is available to early- or full-option VSDC issuers.\nOnly single byte Katakana characters that can map to the EBCDIC-K table expected in the name.\n" + }, + "terminalCompliance": { + "type": "string", + "maxLength": 2, + "description": "Flag that indicates whether the terminal is compliant with standards mandated by the Reserve Bank of India for card-present domestic transactions in India.\n\nFormat:\n- First character indicates whether the terminal supports terminal line encryption (TLE). Possible values:\n - 1: Not certified\n - 2: Certified\n- Second character indicates whether the terminal supports Unique Key Per Transaction (UKPT) and Derived Unique Key Per Transaction (DUKPT). Possible values:\n - 1: Not certified\n - 2: Certified\n\n**Example** `21` indicates that the terminal supports TLE but does not support UKPT/DUKPT.\n\nYou and the terminal vendors are responsible for terminal certification. If you have questions, contact your acquirer.\n\nThis field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 92-93\n- Field: Mastercard Terminal Compliance Indicator\n\nThe 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n\n#### Used by\n**Authorization**\nRequired for card-present transactions in India. Otherwise, not used.\n" + }, + "isDedicatedHardwareTerminal": { + "type": "string", + "maxLength": 1, + "description": "Type of mPOS device. Possible values:\n- 0: Dongle\n- 1: Phone or tablet\n\nThis optional field is supported only for Mastercard transactions on CyberSource through VisaNet.\n\nThe value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR6\n- Position: 141\n- Field: Mastercard mPOS Transaction\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s\nacquirer, who uses this information to facilitate end-of-day clearing processing with payment networks.\n" + }, + "terminalModel": { + "type": "string", + "maxLength": 32, + "description": "This is the model name of the reader which is used to accept the payment.\nPossible values:\n - E3555\n - P400\n - A920\n" + }, + "terminalMake": { + "type": "string", + "maxLength": 32, + "description": "This is the manufacturer name of the reader which is used to accept the payment.\nPossible values:\n - PAX\n - Verifone\n - Ingenico\n" + }, + "serviceCode": { + "type": "string", + "maxLength": 3, + "description": "#### Visa Platform Connect\nMastercard service code that is included in the track data.\nYou can extract the service code from the track data and provide it in this API field.\nThis field is supported only for Mastercard on Visa Platform Connect.\n" + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "installmentInformation": { + "type": "object", + "properties": { + "planType": { + "type": "string", + "maxLength": 1, + "description": "#### American Express Direct, Cielo, and CyberSource Latin American Processing\nFlag that indicates the type of funding for the installment plan associated with the payment.\n\nPossible values:\n- `1`: Merchant-funded installment plan\n- `2`: Issuer-funded installment plan\nIf you do not include this field in the request, CyberSource uses the value in your CyberSource account.\n\nTo change the value in your CyberSource account, contact CyberSource Customer Service.\nFor details, see `installment_plan_type` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### CyberSource through VisaNet and American Express\nDefined code that indicates the type of installment plan for this transaction.\n\nContact American Express for:\n- Information about the kinds of installment plans that American Express provides\n- Values for this field\n\nFor installment payments with American Express in Brazil, the value for this field corresponds to the following data in the TC 33 capture file*:\n- Record: CP07 TCR3\n- Position: 5-6\n- Field: Plan Type\n\n* 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\u2019s acquirer, who uses this information to facilitate end-of-day clearing processing with payment card companies.\n\n#### CyberSource through VisaNet with Visa or Mastercard\nFlag indicating the type of funding for the installment plan associated with the payment.\nPossible values:\n- 1 or 01: Merchant-funded installment plan\n- 2 or 02: Issuer-funded installment plan\n- 43: Crediario installment plan\u2014only with Visa in Brazil\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Visa in Brazil, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR1\n- Position: 5-6\n- Field: Installment Type\n\nFor all other kinds of installment payments, the value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR5\n- Position: 39-40\n- Field: Installment Plan Type (Issuer or Merchant)\n" + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "duration": { + "type": "string", + "maxLength": 2, + "description": "Duration of the auto rental or lodging rental.\n\n#### Auto rental\nThis field is supported for Visa, MasterCard, and American Express.\n**Important** If this field is not included when the `processingInformation.industryDataType` is auto rental,\nthe transaction is declined.\n" + }, + "agency": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 8, + "description": "International Air Transport Association (IATA) code of travel agency that made the vehicle rental reservation.\n" + }, + "name": { + "type": "string", + "maxLength": 25, + "description": "Name of travel agency that made the reservation.\n" + } + } + }, + "autoRental": { + "type": "object", + "properties": { + "noShowIndicator": { + "type": "boolean", + "description": "No Show Indicator provides an indicator noting that the individual did not show up after making a reservation for a vehicle.\nPossible values:\n- true\n- false\n" + }, + "customerName": { + "type": "string", + "maxLength": 40, + "description": "Name of the individual making the rental agreement.\n\nValid data lengths by card:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| 40| 40| 29| 26|\n| Field Type| AN| ANS| AN| AN|\n| M/O/C| O| M| M| M|\n" + }, + "vehicleClass": { + "type": "string", + "maxLength": 4, + "description": "Classification of the rented auto.\n\n**NOTE** For VISA, this is a 2-byte optional code.\n\nValid values for American Express & MasterCard:\n\n|American Express |MasterCard |Description|\n|--- |--- |--- |\n| 0001| 0001| Mini|\n| 0002| 0002| Subcompact|\n| 0003| 0003| Economy|\n| 0004| 0004| Compact|\n| 0005| 0005| Midsize|\n| 0006| 0006| Intermediate|\n| 0007| 0007| Standard|\n| 0008| 0008| Fulll size|\n| 0009| 0009| Luxury|\n| 0010| 0010| Premium|\n| 0011| 0011| Minivan|\n| 0012| 0012| 12-passenger van|\n| 0013| 0013| Moving van|\n| 0014| 0014| 15-passenger van|\n| 0015| 0015| Cargo van|\n| 0016| 0016| 12-foot truck|\n| 0017| 0017| 20-foot truck|\n| 0018| 0018| 24-foot truck|\n| 0019| 0019| 26-foot truck|\n| 0020| 0020| Moped|\n| 0021| 0021| Stretch|\n| 0022| 0022| Regular|\n| 0023| 0023| Unique|\n| 0024| 0024| Exotic|\n| 0025| 0025| Small/medium truck|\n| 0026| 0026| Large truck|\n| 0027| 0027| Small SUV|\n| 0028| 0028| Medium SUV|\n| 0029| 0029| Large SUV|\n| 0030| 0030| Exotic SUV|\n| 9999| 9999| Miscellaneous|\n\nAdditional Values allowed **only** for `American Express`:\n\n|American Express|MasterCard|Description|\n|--- |--- |--- |\n| 0031| NA| Four Wheel Drive|\n| 0032| NA| Special|\n| 0099| NA| Taxi|\n" + }, + "distanceTravelled": { + "type": "string", + "maxLength": 5, + "description": "Total number of miles driven by the customer.\nThis field is supported only for MasterCard and American Express.\n" + }, + "distanceUnit": { + "type": "string", + "maxLength": 1, + "description": "Miles/Kilometers Indicator shows whether the \u201cmiles\u201d fields are expressed in miles or kilometers.\n\nAllowed values:\n- `K` - Kilometers\n- `M` - Miles\n" + }, + "returnDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was returned to the rental agency.\nFormat: ``yyyy-MM-dd HH-mm-ss z``\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "rentalDateTime": { + "type": "string", + "maxLength": 21, + "description": "Date/time the auto was picked up from the rental agency.\nFormat: `yyyy-MM-dd HH-mm-ss z`\nThis field is supported for Visa, MasterCard, and American Express.\n" + }, + "maxFreeDistance": { + "type": "string", + "maxLength": 4, + "description": "Maximum number of free miles or kilometers allowed to a customer for the duration of the auto rental agreement.\nThis field is supported only for MasterCard and American Express.\n" + }, + "insuranceIndicator": { + "type": "boolean", + "description": "Used for MC and Discover\n\nValid values:\n- `true` - Yes (insurance was purchased)\n- `false` - No (insurance was not purchased)\n" + }, + "programCode": { + "type": "string", + "maxLength": 2, + "description": "Used to identify special circumstances applicable to the Card Transaction or Cardholder, such as \"renter\u201d or \u201dshow\u201d.\n\nThis code is `2 digit` value agreed by Merchant and processor.\n" + }, + "returnAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City where the auto was returned to the rental agency.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was returned to the rental agency. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was returned to the rental agency. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "Code, address, phone number, etc. used to identify the location of the auto rental return.\nThis field is supported only for MasterCard and American Express.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where the taxi passenger was dropped off or where the auto rental vehicle was returned.\n" + } + } + }, + "rentalAddress": { + "type": "object", + "properties": { + "city": { + "type": "string", + "maxLength": 25, + "description": "City in which the auto was rented.\n\nFor authorizations, this field is supported for Visa, MasterCard, and American Express.\n\nFor captures, this field is supported only for American Express.\n\nFor all other card types, this field is ignored.\n" + }, + "state": { + "type": "string", + "maxLength": 3, + "description": "State in which the auto was rented. Use the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n" + }, + "country": { + "type": "string", + "maxLength": 3, + "description": "Country where the auto was rented. Use the [ISO Standard Country Codes.](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis field is supported only for American Express.\n" + }, + "locationId": { + "type": "string", + "maxLength": 10, + "description": "The agency code, address, phone number, etc., used to identify the location where the vehicle was rented.\n" + }, + "address1": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "address2": { + "type": "string", + "maxLength": 13, + "description": "Address from where the vehicle was rented.\n" + }, + "location": { + "type": "string", + "maxLength": 38, + "description": "This field contains the location where a taxi passenger was picked up or where an auto rental vehicle was picked up. In most cases, this is the rental agency's business name that appears on the storefront and/or customer receipts, commonly referred to as the DBA (Doing Business As) name. However, if the vehicle was picked up at another location (e.g., a hotel,auto dealership, repair shop, etc.), the name of that location should be used. This entry must be easily recognized by the Cardmember to avoid unnecessary inquiries. If the name is more than 38 characters, use proper and meaningful abbreviation, when possible.\n" + } + } + }, + "agreementNumber": { + "type": "string", + "maxLength": 25, + "description": "Auto rental agency\u2019s agreement (invoice) number provided to the customer. It is used to trace any inquiries about transactions.\nThis field is supported for Visa, MasterCard, and American Express.\nThis Merchant-defined value, which may be composed of any combination of characters and/or numerals, may become\npart of the descriptive bill on the Cardmember's statement.\n" + }, + "odometerReading": { + "type": "string", + "maxLength": 8, + "description": "Odometer reading at time of vehicle rental.\n" + }, + "vehicleIdentificationNumber": { + "type": "string", + "maxLength": 20, + "description": "This field contains a unique identifier assigned by the company to the vehicle.\n" + }, + "companyId": { + "type": "string", + "maxLength": 12, + "description": "Corporate Identifier provides the unique identifier of the corporation or entity renting the vehicle:\n\n|Card Specific Validation|VISA|MasterCard|Discover|AMEX|\n|--- |--- |--- |--- |\n| Filed Length| NA| 12| NA| NA|\n| Field Type| NA| AN| NA| NA|\n| M/O/C| NA| O| NA| NA|\n" + }, + "numberOfAdditionalDrivers": { + "type": "string", + "maxLength": 1, + "description": "The number of additional drivers included on the rental agreement not including the individual who signed the rental agreement.\n" + }, + "driverAge": { + "type": "string", + "maxLength": 3, + "description": "Age of the driver renting the vehicle.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 2, + "description": "Program code used to identify special circumstances, such as \u201cfrequent renter\u201d or \u201cno show\u201d status for the renter.\nPossible values:\n- `0`: not applicable (default)\n- `1`: frequent renter\n- `2`: no show\n\nFor authorizations, this field is supported only for Visa.\n\nFor captures, this field is supported for Visa, MasterCard, and American Express.\n\nCode for special programs applicable to the Card Transaction or the Cardholder.\n" + }, + "vehicleMake": { + "type": "string", + "maxLength": 10, + "description": "Make of the vehicle being rented (e.g., Chevrolet or Ford).\n" + }, + "vehicleModel": { + "type": "string", + "maxLength": 10, + "description": "Model of the vehicle being rented (e.g., Cavalier or Focus).\n" + }, + "timePeriod": { + "type": "string", + "maxLength": 7, + "description": "Indicates the time period for which the vehicle rental rate applies (e.g., daily, weekly or monthly). Daily, Weekly and Monthly are valid values.\n" + }, + "commodityCode": { + "type": "string", + "maxLength": 15, + "description": "Commodity code or International description code used to classify the item. Contact your acquirer for a list of\ncodes.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Customer service telephone number that is used to resolve questions or disputes. Include the area code, exchange, and number.\nThis field is supported only for MasterCard and American Express.\n" + }, + "taxDetails": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n" + }, + "applied": { + "type": "boolean", + "description": "Flag that indicates whether the tax amount (`travelInformation.autoRental.taxDetails.amount`) is\nincluded in the request.\n\nPossible values:\n- `false`: tax amount is not included in the request.\n- `true`: tax amount is included in the request.\n" + }, + "exemptionCode": { + "type": "string", + "maxLength": 1, + "description": "Status code for exemption from sales and use tax. This field is a pass-through, which means that\nCyberSource does not verify the value or modify it in any way before sending it to the processor.\n" + }, + "taxType": { + "type": "string", + "maxLength": 10, + "description": "Different taxes the rental agency applies to the rental agreement such as tourist tax, airport tax, or rental tax.\n" + }, + "taxSummary": { + "type": "string", + "maxLength": 12, + "description": "Summary of all tax types\n" + } + } + }, + "insuranceAmount": { + "type": "string", + "maxLength": 12, + "description": "Insurance charges.\nField is conditional and can include decimal point.\n" + }, + "oneWayDropOffAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred for a one-way rental agreement for the auto.\nThis field is supported only for Visa.\n" + }, + "adjustedAmountIndicator": { + "type": "string", + "maxLength": 1, + "description": "For **MasterCard** and **Discover**:\nAdjusted amount indicator code that indicates\nany miscellaneous charges incurred after the\nauto was returned. Possible values:\n- `A` - Drop-off charges\n- `B` - Delivery charges\n- `C` - Parking expenses\n- `D` - Extra hours\n- `E` - Violations\n- `X` - More than one of the above charges\n\nFor **American Express**:\nAudit indicator code that indicates any\nadjustment for mileage, fuel, auto damage,\netc. made to a rental agreement and whether\nthe cardholder was notified.\n\nPossible value for the authorization service:\n- `A` (default): adjustment amount greater than 0 (zero)\n\nPossible values for the capture service:\n- `X` - Multiple adjustments\n- `Y` - One adjustment only; Cardmember notified\n- `Z` - One adjustment only; Cardmember not notified. This value is used as the default if the request does not include this field and includes an adjustment amount greater than 0 (zero).\nThis is an optional field.\n" + }, + "adjustedAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted Amount indicates whether any miscellaneous charges were incurred after the vehicle was returned.\n\nFor authorizations, this field is supported only for American Express.\n\nFor captures, this field is supported only for MasterCard and American Express.\n**NOTE** For American Express, this field is required if the `travelInformation.autoRental.adjustedAmountIndicator` field\nis included in the request and has a value; otherwise, this field is optional.\n\nFor all other card types, this field is ignored.\n" + }, + "fuelCharges": { + "type": "string", + "maxLength": 12, + "description": "Extra gasoline charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "weeklyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Weekly Rental Amount provides the amount charged for a seven-day rental period. Field - Time Period needs to be populated with Weekly if this field is present\n" + }, + "dailyRentalRate": { + "type": "string", + "maxLength": 12, + "description": "Daily auto rental rate charged.\nThis field is supported only for MasterCard and American Express.\n\nField - Time Period needs to be populated with Daily if this field is present\n" + }, + "ratePerMile": { + "type": "string", + "maxLength": 12, + "description": "Rate charged for each mile.\nThis field is supported only for MasterCard and American Express.\n" + }, + "mileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Regular Mileage Charge provides the amount charged for regular miles traveled during vehicle rental. Two decimal places\n" + }, + "extraMileageCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra mileage charges that extend beyond the basic rental agreement.\nThis field is supported only for Visa.\n" + }, + "lateFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Extra charges related to a late return of the rented auto.\nThis field is supported only for Visa.\n" + }, + "towingCharge": { + "type": "string", + "maxLength": 4, + "description": "(Towing Charges) provides the amount charged to tow the rental vehicle.\n" + }, + "extraCharge": { + "type": "string", + "maxLength": 12, + "description": "(Extra Charges) provides the extra charges associated with the vehicle rental.\n" + }, + "gpsCharge": { + "type": "string", + "maxLength": 12, + "description": "Amount charged for renting a Global Positioning Service (GPS).\n" + }, + "phoneCharge": { + "type": "string", + "maxLength": 12, + "description": "Additional charges incurred for phone usage included on the total bill.\n" + }, + "parkingViolationCharge": { + "type": "string", + "maxLength": 12, + "description": "Extra charges incurred due to a parking violation for the auto.\nThis field is supported only for Visa.\n" + }, + "otherCharges": { + "type": "string", + "maxLength": 12, + "description": "Total amount charged for all other miscellaneous charges not previously defined.\n" + } + } + }, + "lodging": { + "type": "object", + "properties": { + "checkInDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked in. In the case of a no-show or a reservation, the scheduled arrival date.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "checkOutDate": { + "type": "string", + "maxLength": 6, + "description": "Date on which the guest checked out.\nFormat: `MMDDYY`. For best interchange rates, make sure it is a valid date.\n" + }, + "room": { + "type": "array", + "description": "The object containing the number of nights and the daily rate that applies for that no of nights.\n", + "items": { + "type": "object", + "properties": { + "dailyRate": { + "type": "string", + "maxLength": 8, + "description": "Daily cost of the room.\n" + }, + "numberOfNights": { + "type": "integer", + "minimum": 1, + "maximum": 9999, + "description": "Number of nights billed at the rate specified by `travelInformation.lodging.room[].dailyRate`.\n" + } + } + } + }, + "smokingPreference": { + "type": "string", + "maxLength": 1, + "description": "Smoking preference of the guest.\nPossible values:\n- `Y`: smoking room\n- `N`: non-smoking room\n" + }, + "numberOfRooms": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of rooms booked by the cardholder.\n" + }, + "numberOfGuests": { + "type": "integer", + "minimum": 1, + "maximum": 99, + "description": "Number of guests staying in the room.\n" + }, + "roomBedType": { + "type": "string", + "maxLength": 12, + "description": "Type of room, such as queen, king, or two doubles.\n" + }, + "roomTaxType": { + "type": "string", + "maxLength": 10, + "description": "Type of tax, such as tourist or hotel.\n" + }, + "roomRateType": { + "type": "string", + "maxLength": 12, + "description": "Type of rate, such as corporate or senior citizen.\n" + }, + "guestName": { + "type": "string", + "maxLength": 40, + "description": "Name of the guest under which the room is reserved.\n" + }, + "customerServicePhoneNumber": { + "type": "string", + "maxLength": 17, + "description": "Your toll-free customer service phone number.\n" + }, + "corporateClientCode": { + "type": "string", + "maxLength": 17, + "description": "Code assigned to a business. You can use this code to identify corporate rates and discounts for guests.\n" + }, + "additionalDiscountAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of an additional coupon or discount.\n" + }, + "roomLocation": { + "type": "string", + "maxLength": 10, + "description": "Location of room, such as lake view or ocean view.\n" + }, + "specialProgramCode": { + "type": "string", + "maxLength": 1, + "description": "Code that identifies special circumstances.\nPossible values:\n- `1`: lodging (default)\n- `2`: no show reservation\n- `3`: advanced deposit\n" + }, + "totalTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount.\n" + }, + "prepaidCost": { + "type": "string", + "maxLength": 12, + "description": "Prepaid amount, such as a deposit.\n" + }, + "foodAndBeverageCost": { + "type": "string", + "maxLength": 12, + "description": "Cost for all food and beverages.\n" + }, + "roomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax for the room.\n" + }, + "adjustmentAmount": { + "type": "string", + "maxLength": 12, + "description": "Adjusted amount charged in addition to the reservation amount after the stay is complete.\n" + }, + "phoneCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of telephone services.\n" + }, + "restaurantCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of restaurant purchases\n" + }, + "roomServiceCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of room service.\n" + }, + "miniBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of mini-bar purchases.\n" + }, + "laundryCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of laundry services.\n" + }, + "miscellaneousCost": { + "type": "string", + "maxLength": 12, + "description": "Miscellaneous costs.\n" + }, + "giftShopCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of gift shop purchases.\n" + }, + "movieCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of movies.\n" + }, + "healthClubCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of health club services.\n" + }, + "valetParkingCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of valet parking services.\n" + }, + "cashDisbursementCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of the cash that was disbursed plus any associated service fees\n" + }, + "nonRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of non-room purchases, such as meals and gifts.\n" + }, + "businessCenterCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of business center services.\n" + }, + "loungeBarCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of lounge and bar purchases.\n" + }, + "transportationCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of transportation services.\n" + }, + "gratuityAmount": { + "type": "string", + "maxLength": 12, + "description": "Gratuity.\n" + }, + "conferenceRoomCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of conference room services.\n" + }, + "audioVisualCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of audio visual services.\n" + }, + "banquestCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of banquet services.\n" + }, + "nonRoomTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax on non-room purchases.\n" + }, + "earlyCheckOutCost": { + "type": "string", + "maxLength": 12, + "description": "Service fee for early departure.\n" + }, + "internetAccessCost": { + "type": "string", + "maxLength": 12, + "description": "Cost of Internet access.\n" + } + } + }, + "transit": { + "type": "object", + "properties": { + "airline": { + "type": "object", + "properties": { + "bookingReferenceNumber": { + "type": "string", + "maxLength": 15, + "description": "Reference number for the airline booking.\nRequired if ticket numbers are not issued.\n" + }, + "carrierName": { + "type": "string", + "maxLength": 15, + "description": "Airline that generated the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "ticketIssuer": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 4, + "description": "IATA2 airline code.\nFormat: English characters only.\nRequired for Mastercard; optional for all other card types.\n" + }, + "name": { + "type": "string", + "maxLength": 20, + "description": "Name of the ticket issuer. If you do not include this field,\nCyberSource uses the value for your merchant name that is in the CyberSource merchant configuration database.\n" + }, + "address": { + "type": "string", + "maxLength": 16, + "description": "Address of the company issuing the ticket.\n" + }, + "locality": { + "type": "string", + "maxLength": 18, + "description": "City in which the transaction occurred.\nIf the name of the city exceeds 18 characters, use meaningful abbreviations.\nFormat: English characters only.\nOptional request field.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 18, + "description": "State in which transaction occured.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 15, + "description": "Zip code of the city in which transaction occured.\n" + }, + "country": { + "type": "string", + "maxLength": 18, + "description": "Country in which transaction occured.\n" + } + } + }, + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "checkDigit": { + "type": "string", + "maxLength": 1, + "description": "Check digit for the ticket number. CyberSource recommends that you validate the check digit.\nWith Discover and Diners Club, a valid ticket number has these characteristics:\n- The value is numeric.\n- The first three digits are a valid IATA2 license plate carrier code.\n- The last digit is a check digit or zero (0).\n- All remaining digits are nonzero.\n" + }, + "restrictedTicketIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Flag that indicates whether or not the ticket is restricted (nonrefundable).\nPossible values:\n- 0: No restriction (refundable)\n- 1: Restricted (nonrefundable)\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "transactionType": { + "type": "integer", + "maxLength": 2, + "description": "Type of charge.\nPossible values:\n- 01: Charge is for an airline ticket\n- 02: Charge is for an item that is not an airline ticket\n" + }, + "extendedPaymentCode": { + "type": "string", + "maxLength": 3, + "description": "The field is not currently supported.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 42, + "description": "Name of the passenger to whom the ticket was issued. This will always be a single passenger's name.\nIf there are more than one passengers, provide only the primary passenger's name.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nFormat: English characters only.\nOptional request field.\n" + }, + "customerCode": { + "type": "string", + "maxLength": 40, + "description": "Reference number or code that identifies the cardholder.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "documentType": { + "type": "string", + "maxLength": 1, + "description": "Airline document type code that specifies the purpose of the transaction.\nFormat: English characters only.\nOptional request field.\n\n| Code | Description |\n| --- | --- |\n| 01 | Passenger ticket |\n| 02 | Additional collection |\n| 03 | Excess baggage |\n| 04 | Miscellaneous charge order (MCO) or prepaid ticket authorization |\n| 05 | Special service ticket |\n| 06 | Supported refund |\n| 07 | Unsupported refund |\n| 08 | Lost ticket application |\n| 09 | Tour order voucher |\n| 10 | Ticket by mail |\n| 11 | Undercharge adjustment |\n| 12 | Group ticket |\n| 13 | Exchange adjustment |\n| 14 | SPD or air freight |\n| 15 | In-flight adjustment |\n| 16 | Agency passenger ticket |\n| 17 | Agency tour order or voucher |\n| 18 | Agency miscellaneous charge order (MCO) |\n| 19 | Agency exchange order |\n| 20 | Agency group ticket |\n| 21 | Debit adjustment for duplicate refund or use |\n| 22 | In-flight merchandise order |\n| 23 | Catalogue merchandise order |\n| 24 | In-flight phone charges |\n| 25 | Frequent flyer fee or purchase |\n| 26 | Kennel charge |\n| 27 | Animal transportation charge |\n| 28 | Firearms case |\n| 29 | Upgrade charge |\n| 30 | Credit for unused transportation |\n| 31 | Credit for class of service adjustment |\n| 32 | Credit for denied boarding |\n| 33 | Credit for miscellaneous refund |\n| 34 | Credit for lost ticket refund |\n| 35 | Credit for exchange refund |\n| 36 | Credit for overcharge adjustment |\n| 37 | Credit for multiple Unused tickets |\n| 38 | Exchange order |\n| 39 | Self-service ticket |\n| 41 | In-flight duty-free purchase |\n| 42 | Senior citizen discount booklets |\n| 43 | Club membership fee |\n| 44 | Coupon book |\n| 45 | In-flight charges |\n| 46 | Tour deposit |\n| 47 | Frequent flyer overnight delivery charge |\n| 48 | Frequent flyer fulfillment |\n| 49 | Small package delivery |\n| 50 | Vendor sale |\n| 51 | Miscellaneous taxes or fees |\n| 52 | Travel agency fee |\n| 60 | Vendor refund or credit |\n| 64 | Duty free sale |\n| 65 | Preferred seat upgrade |\n| 66 | Cabin upgrade |\n| 67 | Lounge or club access or day pass |\n| 68 | Agent assisted reservation or ticketing fee |\n| 69 | Ticket change or cancel fee |\n| 70 | Trip insurance |\n| 71 | Unaccompanied minor |\n| 72 | Standby fee |\n| 73 | Curbside baggage |\n| 74 | In-flight medical equipment |\n| 75 | Ticket or pass print fee |\n| 76 | Checked sporting or special equipment |\n| 77 | Dry ice fee |\n| 78 | Mail or postage fee |\n| 79 | Club membership fee or temporary trial |\n| 80 | Frequent flyer activation or reinstatement |\n| 81 | Gift certificate |\n| 82 | Onboard or in-flight prepaid voucher |\n| 83 | Optional services fee |\n| 84 | Advance purchase for excess baggage |\n| 85 | Advance purchase for preferred seat upgrade |\n| 86 | Advance purchase for cabin upgrade |\n| 87 | Advance purchase for optional services |\n| 88 | WiFi |\n| 89 | Packages |\n| 90 | In-flight entertainment or internet access |\n| 91 | Overweight bag fee |\n| 92 | Sleep sets |\n| 93 | Special purchase fee |\n" + }, + "documentNumber": { + "type": "string", + "maxLength": 14, + "description": "The field is not currently supported.\n" + }, + "documentNumberOfParts": { + "type": "integer", + "maxLength": 4, + "description": "The field is not currently supported.\n" + }, + "invoiceNumber": { + "type": "string", + "maxLength": 25, + "description": "Invoice number for the airline transaction.\n" + }, + "invoiceDate": { + "type": "integer", + "maxLength": 8, + "description": "Invoice date. The format is YYYYMMDD.\nIf this value is\nincluded in the request, it is used in the creation of the invoice number. See \"Invoice Number,\"\n" + }, + "additionalCharges": { + "type": "string", + "maxLength": 20, + "description": "Description of the charge if the charge does not involve an airline ticket.\nFor example: Excess baggage.\n" + }, + "totalFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Total fee for the ticket. This value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingSequence": { + "type": "string", + "maxLength": 2, + "description": "Number that identifies the clearing message when multiple clearing messages are allowed per authorized transaction.\nEach clearing message linked to one authorization request must include a unique clearing sequence number between 1 and the total number of clearing records.\nFormat: English characters only.\nOptional request field.\n" + }, + "clearingCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of clearing messages associated with the authorization request.\nFormat: English characters only.\nOptional request field.\n" + }, + "totalClearingAmount": { + "type": "string", + "maxLength": 20, + "description": "Total clearing amount for all transactions in the clearing count set.\nThis value cannot exceed `99999999999999999999` (twenty 9s).\nFormat: English characters only.\nIf this field is not set and if the total amount from the original authorization is not NULL,\nthe total clearing amount is set to the total amount from the original authorization.\n" + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationSystemCode": { + "type": "string", + "maxLength": 4, + "description": "Code that specifies the computerized reservation system used to make the reservation and purchase the ticket.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces;\nspecial characters are not included.\nOptional request field.\n" + }, + "processIdentifier": { + "type": "string", + "maxLength": 3, + "description": "Airline process identifier. This value is the airline\u2019s three-digit IATA1 code\nwhich is used to process extended payment airline tickets.\n" + }, + "ticketIssueDate": { + "type": "string", + "maxLength": 8, + "description": "Date on which the transaction occurred.\nFormat: `YYYYMMDD`\nFormat: English characters only.\nOptional request field.\n" + }, + "electronicTicketIndicator": { + "type": "boolean", + "description": "Flag that indicates whether an electronic ticket was issued.\nPossible values:\n- `true`\n- `false`\nOptional request field.\n" + }, + "originalTicketNumber": { + "type": "string", + "maxLength": 14, + "description": "Original ticket number when the transaction is for a replacement ticket.\n" + }, + "purchaseType": { + "type": "string", + "maxLength": 3, + "description": "Type of purchase. Possible values:\n- `EXC`: Exchange ticket\n- `MSC`: Miscellaneous (not a ticket purchase and not a transaction related to an exchange ticket)\n- `REF`: Refund\n- `TKT`: Ticket\nFormat: English characters only.\nOptional request field.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 1, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\n\nOptional request field.\n" + }, + "ticketChangeIndicator": { + "type": "string", + "maxLength": 1, + "description": "Type of update.\nPossible values:\n- `C`: Change to the existing ticket.\n- `N`: New ticket.\nFormat: English characters only\nOptional request field.\n" + }, + "planNumber": { + "type": "string", + "maxLength": 1, + "description": "Plan number based on the fare.\nThis value is provided by the airline.\nFormat: English characters only.\nOptional request field.\n" + }, + "arrivalDate": { + "type": "string", + "maxLength": 8, + "description": "Date of arrival for the last leg of the trip.\nFormat: `MMDDYYYY`\nEnglish characters only.\nOptional request field.\n" + }, + "restrictedTicketDesciption": { + "type": "string", + "maxLength": 20, + "description": "Text that describes the ticket limitations, such as _nonrefundable_.\nFormat: English characters only.\nOptional request field.\n" + }, + "exchangeTicketAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of the exchanged ticket.\nFormat: English characters only.\n" + }, + "exchangeTicketFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for exchanging the ticket.\nFormat: English characters only.\nOptional request field.\n" + }, + "reservationType": { + "type": "string", + "maxLength": 32, + "description": "The field is not currently supported.\n" + }, + "boardingFeeAmount": { + "type": "string", + "maxLength": 12, + "description": "Boarding fee.\n" + }, + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "carrierCode": { + "type": "string", + "maxLength": 4, + "description": "IATA code for the carrier for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "flightNumber": { + "type": "string", + "maxLength": 6, + "description": "Flight number for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "originatingAirportCode": { + "type": "string", + "maxLength": 5, + "description": "IATA code for the originating airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "class": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the class of service for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "stopoverIndicator": { + "type": "integer", + "maxLength": 1, + "description": "Code that indicates whether a stopover is allowed on this leg of the trip. Possible values:\n- `O` (capital letter \u201cO\u201d) (default): Stopover allowed\n- `X` (capital letter \u201cX\u201d): Stopover not allowed\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureDate": { + "type": "integer", + "maxLength": 8, + "description": "Departure date for the first leg of the trip.\nFormat: `YYYYMMDD`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "destinationAirportCode": { + "type": "string", + "maxLength": 3, + "description": "IATA code for the destination airport for this leg of the trip.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "fareBasis": { + "type": "string", + "maxLength": 15, + "description": "Code for the fare basis for this leg of the trip.\nThe fare basis is assigned by the carriers and indicates a particular ticket type,\nsuch as business class or discounted/nonrefundable.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nFormat: English characters only.\nOptional request field for travel legs.auto_rental_regular_mileage_cost\n" + }, + "departTaxAmount": { + "type": "string", + "maxLength": 12, + "description": "Amount of departure tax for this leg of the trip.\n" + }, + "conjunctionTicket": { + "type": "string", + "maxLength": 25, + "description": "Ticket that contains additional coupons for this leg of the trip on an itinerary that has more than four segments.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "exchangeTicketNumber": { + "type": "string", + "maxLength": 25, + "description": "New ticket number that is issued when the ticket is exchanged for this leg of the trip.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "couponNumber": { + "type": "string", + "maxLength": 1, + "description": "Coupon number. Each leg on the ticket requires a separate coupon, and each coupon is identified by the coupon number.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "departureTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of departure for this leg of the trip. The format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "departureTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the departure time.\nPossible values:\n- A: 12:00 midnight to 11:59 a.m.\n- P: 12:00 noon to 11:59 p.m\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "arrivalTime": { + "type": "integer", + "maxLength": 4, + "description": "Time of arrival for this leg of the trip.\nThe format is military time and HHMM:\nIf not all zeros, then the hours must be `00-23` and the minutes must be `00-59`\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "arrivalTimeMeridian": { + "type": "string", + "maxLength": 1, + "description": "AM or PM for the arrival time for this leg of the trip.\nPossible values:\n- `A`: 12:00 midnight to 11:59 a.m.\n- `P`: 12:00 noon to 11:59 p.m.\nFormat: English characters only.\nRestricted string data type that indicates a sequence of letters, numbers, and spaces; special characters are not included.\nOptional request field for travel legs.\n" + }, + "endorsementsRestrictions": { + "type": "string", + "maxLength": 20, + "description": "Notes or notations about endorsements and restrictions for this leg of the trip.\nEndorsements can be notations added by the travel agency, including mandatory government-required notations such as value added tax.\nRestrictions are limitations for the ticket based on the type of fare, such as a nonrefundable ticket or a 3-day minimum stay.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "totalFareAmount": { + "type": "string", + "maxLength": 15, + "description": "Total fare for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "feeAmount": { + "type": "string", + "maxLength": 12, + "description": "Fee for this leg of the trip, such as an airport fee or country fee.\nFormat: English characters only.\nOptional request field for travel legs.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Tax for this leg of the trip.\nFormat: English characters only.\nOptional request field for travel legs.\n" + } + } + } + }, + "ancillaryInformation": { + "type": "object", + "properties": { + "ticketNumber": { + "type": "string", + "maxLength": 15, + "description": "Ticket number, which consists of the carrier code, form, and serial number, without the check digit.\n**Important** This field is required in the U.S. in order for you to qualify for either the\ncustom payment service (CPS) or the electronic interchange reimbursement fee (EIRF) program.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "passengerName": { + "type": "string", + "maxLength": 20, + "description": "Name of the passenger. If the passenger\u2019s name is not available, this value is the cardholder\u2019s name. If neither the passenger\u2019s name nor the cardholder\u2019s name is available,\nthis value is a description of the ancillary purchase.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional field for ancillary service.\n" + }, + "connectedTicketNumber": { + "type": "string", + "maxLength": 15, + "description": "Number for the airline ticket to which the ancillary purchase is connected.\n\nIf this purchase has a connection or relationship to another purchase such as a baggage fee for a passenger transport ticket, this field must contain the ticket number for the other purchase.\n\nFor a stand-alone purchase, the value for this field must be the same as the value for the `travelInformation.transit.airline.ancillaryInformation.ticketNumber` field.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom payment service (CPS) or the electronic interchange reimbursement fee (EIRF)\nprogram.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "creditReasonIndicator": { + "type": "string", + "maxLength": 15, + "description": "Reason for the credit.\nPossible values:\n- `A`: Cancellation of the ancillary passenger transport purchase.\n- `B`: Cancellation of the airline ticket and the passenger transport ancillary purchase.\n- `C`: Cancellation of the airline ticket.\n- `O`: Other.\n- `P`: Partial refund of the airline ticket.\nFormat: English characters only.\nOptional field for ancillary services.\n" + }, + "service": { + "type": "array", + "items": { + "type": "object", + "properties": { + "categoryCode": { + "type": "string", + "maxLength": 4, + "description": "Category code for the ancillary service that is provided. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\n**Important** This field is required in the U.S. in order for you to qualify for either the custom\npayment service (CPS) or the electronic interchange reimbursement fee (EIRF)program.\nFormat: English characters only.\nOptional request field for ancillary services.\n" + }, + "subCategoryCode": { + "type": "string", + "maxLength": 4, + "description": "Subcategory code for the ancillary service category. Obtain the codes from the International\nAir Transport Association (IATA).\n**Note** `#` is either 0, 1, 2, or 3.\nFormat English characters only.\nOptional request field for ancillary services.\n" + } + } + } + } + } + } + } + } + } + } + } + }, + "promotionInformation": { + "type": "object", + "properties": { + "additionalCode": { + "type": "string", + "maxLength": 12, + "description": "Additional rental agency marketed coupons for consumers to discount the rate of the vehicle rental agreement.\n" + }, + "code": { + "type": "string", + "maxLength": 12, + "description": "Code for a promotion or discount.\n" + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "12345678" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "Test", + "lastName": "test", + "phoneNumber": "9999999999", + "address1": "test", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "200", + "currency": "usd" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "expirationMonth": "03", + "type": "001" + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2CreditsPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + }, + "void": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - PENDING\n - COMPLETED (as in the case of PIN Debit Full Financial Credit)\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "creditAmountDetails": { + "type": "object", + "properties": { + "creditAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount that was credited to the cardholder\u2019s account.\n\nReturned by PIN debit credit.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "bankTransferOptions": { + "type": "object", + "properties": { + "settlementMethod": { + "type": "string", + "maxLength": 1, + "description": "Method used for settlement.\n\nPossible values:\n- `A`: Automated Clearing House (default for credits and for transactions using Canadian dollars)\n- `F`: Facsimile draft (U.S. dollars only)\n- `B`: Best possible (U.S. dollars only) (default if the field has not already been configured for your\nmerchant ID)\n\nFor details, see `ecp_settlement_method` field description for credit cars and `ecp_debit_settlement_method` for debit cards in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "enhancedDataEnabled": { + "type": "boolean", + "description": "The possible values for the reply field are:\n- `true` : the airline data was included in the request to the processor.\n- `false` : the airline data was not included in the request to the processor.\n\nReturned by authorization, capture, or credit services.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + }, + "transactionId": { + "type": "string", + "maxLength": 18, + "description": "Processor transaction ID.\n\nThis value identifies the transaction on a host system. This value is supported only for Moneris. It contains\nthis information:\n\n - Terminal used to process the transaction\n - Shift during which the transaction took place\n - Batch number\n - Transaction number within the batch\n\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\nExample For the value 66012345001069003:\n\n - Terminal ID = 66012345\n - Shift number = 001\n - Batch number = 069\n - Transaction number = 003\n" + }, + "forwardedAcquirerCode": { + "type": "string", + "maxLength": 32, + "description": "Name of the Japanese acquirer that processed the transaction. Returned only for JCN Gateway.\nPlease contact the CyberSource Japan Support Group for more information.\n" + }, + "merchantNumber": { + "type": "string", + "maxLength": 15, + "description": "Identifier that was assigned to you by your acquirer. This value must be printed on the receipt.\n\n#### Returned by\nAuthorizations and Credits.\n\nThis reply field is only supported by merchants who have installed client software on their POS terminals and\nuse these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "achVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 2, + "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + }, + "resultCodeRaw": { + "type": "string", + "maxLength": 10, + "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + } + } + }, + "networkTransactionId": { + "type": "string", + "description": "Same value as `processorInformation.transactionId`" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "correctedAccountNumber": { + "type": "string", + "maxLength": 17, + "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_account_number` or `ecp_credit_corrected_account_number` field descriptions in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "correctedRoutingNumber": { + "type": "string", + "maxLength": 9, + "description": "Corrected account number from the ACH verification service.\n\nFor details, see `ecp_debit_corrected_routing_number` or `ecp_credit_corrected_routing_number` reply field descriptions in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token used in the transaction.\nWhen you include this value in your request, many of the fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 12, + "maxLength": 32 + }, + "state": { + "type": "string", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token used in the transaction.\nWhen you include this value in your request, many of the shipping fields that can be supplied for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "invoiceDetails": { + "type": "object", + "properties": { + "level3TransmissionStatus": { + "type": "boolean", + "description": "Indicates whether CyberSource sent the Level III information to the processor. The possible values are:\n\nIf your account is not enabled for Level III data or if you did not include the purchasing level field in your\nrequest, CyberSource does not include the Level III data in the request sent to the processor.\n\nPossible values:\n- **true**\n- **false**\n" + } + } + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/credits/4963014324246004901546", + "method": "GET" + }, + "void": { + "href": "/pts/v2/credits/4963014324246004901546/voids", + "method": "POST" + } + }, + "id": "4963014324246004901546", + "submitTimeUtc": "2017-06-01T071712Z", + "status": "200", + "reconciliationId": "39570714X3E1LBQ8", + "statusInformation": { + "reason": "SUCCESS", + "message": "Successful transaction." + }, + "clientReferenceInformation": { + "code": "12345678" + }, + "creditAmountDetails": { + "currency": "usd", + "creditAmount": "200.00" + }, + "orderInformation": { + "amountDetails": { + "currency": "usd" + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2CreditsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2CreditsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Credit", + "sample-name": "Process Credit", + "value": { + "clientReferenceInformation": { + "code": "12345678" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "John", + "lastName": "Deo", + "phoneNumber": "9321499232", + "address1": "900 Metro Center Blvd", + "postalCode": "48104-2201", + "locality": "Foster City", + "administrativeArea": "CA", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "200", + "currency": "usd" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "expirationMonth": "03", + "type": "001" + } + } + } + }, + "example1": { + "summary": "Electronic Check Stand-Alone Credits", + "sample-name": "Process Credit ECheck Stand-Alone", + "value": { + "clientReferenceInformation": { + "code": "TC46125-1" + }, + "paymentInformation": { + "paymentType": { + "name": "CHECK" + }, + "bank": { + "account": { + "type": "C", + "number": "4100", + "checkNumber": "123456" + }, + "routingNumber": "071923284" + } + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100", + "currency": "USD" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "locality": "san francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + } + }, + "example2": { + "summary": "Service Fees Credit", + "sample-name": "Process Credit with Service Fees", + "value": { + "clientReferenceInformation": { + "code": "12345678" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "2325.00", + "currency": "usd", + "serviceFeeAmount": "30.0" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "number": "4111111111111111", + "expirationMonth": "03" + } + } + } + }, + "example3": { + "summary": "Credit with Customer Token Id", + "sample-name": "Credit with Customer Token Id", + "value": { + "clientReferenceInformation": { + "code": "12345678" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "200", + "currency": "usd" + } + }, + "paymentInformation": { + "customer": { + "id": "7500BB199B4270EFE05340588D0AFCAD" + } + } + }, + "parentTag": "Credit with Tokenization" + }, + "example4": { + "summary": "Credit with Customer, Payment Instrument and Shipping Address Token Id", + "sample-name": "Credit with Customer, Payment Instrument and Shipping Address Token Id", + "value": { + "clientReferenceInformation": { + "code": "12345678" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "200", + "currency": "usd" + } + }, + "paymentInformation": { + "customer": { + "id": "7500BB199B4270EFE05340588D0AFCAD" + }, + "paymentInstrument": { + "id": "7500BB199B4270EFE05340588D0AFCPI" + }, + "shippingAddress": { + "id": "7500BB199B4270EFE05340588D0AFCSA" + } + } + }, + "parentTag": "Credit with Tokenization" + }, + "example5": { + "summary": "Credit with Instrument Identifier Token Id", + "sample-name": "Credit with Instrument Identifier Token Id", + "value": { + "clientReferenceInformation": { + "code": "12345678" + }, + "orderInformation": { + "billTo": { + "country": "US", + "firstName": "John", + "lastName": "Deo", + "phoneNumber": "9321499232", + "address1": "900 Metro Center Blvd", + "postalCode": "48104-2201", + "locality": "Foster City", + "administrativeArea": "CA", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "200", + "currency": "usd" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2031", + "expirationMonth": "03", + "type": "001" + }, + "instrumentIdentifier": { + "id": "7500BB199B4270EFE05340588D0AFCII" + } + } + }, + "parentTag": "Credit with Tokenization" + }, + "example6": { + "summary": "Credit Using Bluefin PCI P2PE with Visa Platform Connect", + "sample-name": "Credit Using Bluefin PCI P2PE with Visa Platform Connect", + "value": { + "clientReferenceInformation": { + "code": "demomerchant" + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "catLevel": 1, + "entryMode": "keyed", + "terminalCapability": 2 + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "Deo", + "address1": "201 S. Division St.", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "firstName": "John", + "phoneNumber": 999999999, + "district": "MI", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": 2050, + "expirationMonth": 12 + }, + "fluidData": { + "descriptor": "Ymx1ZWZpbg==", + "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" + } + } + }, + "parentTag": "Card Present with Visa Platform Connect" + }, + "example7": { + "summary": "Credit Using Bluefin PCI P2PE for Card Present Enabled Acquirer", + "sample-name": "Credit Using Bluefin PCI P2PE for Card Present Enabled Acquirer", + "value": { + "clientReferenceInformation": { + "code": "demomerchant" + }, + "pointOfSaleInformation": { + "cardPresent": "Y", + "catLevel": 1, + "entryMode": "keyed", + "terminalCapability": 2 + }, + "processingInformation": { + "commerceIndicator": "retail" + }, + "orderInformation": { + "billTo": { + "country": "US", + "lastName": "Deo", + "address1": "201 S. Division St.", + "postalCode": "48104-2201", + "locality": "Ann Arbor", + "administrativeArea": "MI", + "firstName": "John", + "phoneNumber": 999999999, + "district": "MI", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "expirationYear": 2050, + "expirationMonth": 12 + }, + "fluidData": { + "descriptor": "Ymx1ZWZpbg==", + "value": "02d700801f3c20008383252a363031312a2a2a2a2a2a2a2a303030395e46444d53202020202020202020202020202020202020202020205e323231322a2a2a2a2a2a2a2a3f2a3b363031312a2a2a2a2a2a2a2a303030393d323231322a2a2a2a2a2a2a2a3f2a7a75ad15d25217290c54b3d9d1c3868602136c68d339d52d98423391f3e631511d548fff08b414feac9ff6c6dede8fb09bae870e4e32f6f462d6a75fa0a178c3bd18d0d3ade21bc7a0ea687a2eef64551751e502d97cb98dc53ea55162cdfa395431323439323830303762994901000001a000731a8003" + } + } + }, + "parentTag": "Card Present Enabled Acquirer" + } + } + } + }, + "/pts/v2/payments/{id}/voids": { + "post": { + "summary": "Void a Payment", + "description": "Void a Payment API is only used, if you have requested Authorization and Capture together in [/pts/v2/payments](https://developer.cybersource.com/api-reference-assets/index.html#payments_payments) API call. Include the payment ID in the POST request to cancel the payment.\n", + "tags": [ + "void" + ], + "operationId": "voidPayment", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "voidPaymentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "transactionId": "" + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The payment ID returned from a previous payment request.", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2PaymentsVoidsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "transactionId": "909080801" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "voidAmountDetails": { + "currency": "usd", + "voidAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2PaymentsVoidsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - NOT_VOIDABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2PaymentsVoidsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Void a Payment", + "value": { + "clientReferenceInformation": { + "code": "test_void" + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/captures/{id}/voids": { + "post": { + "summary": "Void a Capture", + "description": "Refund a capture API is only used, if you have requested Capture independenlty using [/pts/v2/payments/{id}/captures](https://developer.cybersource.com/api-reference-assets/index.html#payments_capture) API call. Include the capture ID in the POST request to cancel the capture.\n", + "tags": [ + "void" + ], + "operationId": "voidCapture", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "voidCaptureRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "transactionId": "" + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The capture ID returned from a previous capture request.", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2CapturesVoidsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "transactionId": "909080801" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "voidAmountDetails": { + "currency": "usd", + "voidAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2CapturesVoidsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - NOT_VOIDABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2CapturesVoidsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Void a Capture", + "value": { + "clientReferenceInformation": { + "code": "test_void" + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments/{id}/captures", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/refunds/{id}/voids": { + "post": { + "summary": "Void a Refund", + "description": "Include the refund ID in the POST request to cancel the refund.", + "tags": [ + "void" + ], + "operationId": "voidRefund", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "voidRefundRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "transactionId": "" + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The refund ID returned from a previous refund request.", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2RefundsVoidsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "transactionId": "909080801" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "voidAmountDetails": { + "currency": "usd", + "voidAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2RefundsVoidsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - NOT_VOIDABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2RefundsVoidsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Void a Refund", + "value": { + "clientReferenceInformation": { + "code": "test_void" + } + }, + "depends": { + "example": { + "path": "/pts/v2/payments/{id}/refunds", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/credits/{id}/voids": { + "post": { + "summary": "Void a Credit", + "description": "Include the credit ID in the POST request to cancel the credit.", + "tags": [ + "void" + ], + "operationId": "voidCredit", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "parameters": [ + { + "name": "voidCreditRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "transactionId": "" + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The credit ID returned from a previous credit request.", + "required": true, + "type": "string" + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2CreditsVoidsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "transactionId": "909080801" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "voidAmountDetails": { + "currency": "usd", + "voidAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2CreditsVoidsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - NOT_VOIDABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2CreditsVoidsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Void a Credit", + "value": { + "clientReferenceInformation": { + "code": "test_void" + } + }, + "depends": { + "example": { + "path": "/pts/v2/credits", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/pts/v2/voids/": { + "post": { + "summary": "Timeout Void", + "description": "This is to void a previous payment, capture, refund, or credit that merchant does not receive a reply(Mostly due to timeout). This is to void a previous payment, capture, refund, or credit that merchant does not receive a reply(Mostly due to Timeout). To use this feature/API, make sure to pass unique value to field - clientReferenceInformation -> transactionId in your payment, capture, refund, or credit API call and use same transactionId in this API request payload to reverse the payment.", + "tags": [ + "void" + ], + "operationId": "mitVoid", + "x-devcenter-metaData": { + "categoryTag": "Payments", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-payments/GettingStarted.html" + }, + "x-example": { + "example0": { + "summary": "Timeout void", + "value": { + "clientReferenceInformation": { + "transactionId": "" + } + } + } + }, + "parameters": [ + { + "name": "mitVoidRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "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.\n" + }, + "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.\n\n**Note** Use this field only if you want to support merchant-initiated reversal and void operations.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, and Void**\nOptional field.\n\n#### PIN Debit\nFor a PIN debit reversal, your request must include a request ID or a merchant transaction identifier.\nOptional field for PIN debit purchase or credit requests.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "subTypeName": { + "type": "string", + "description": "Detailed information about the Payment Type. Possible values:\n- `DEBIT`: Use this value to indicate a PIN debit transaction.\n\nExamples: For Card, if Credit or Debit or PrePaid. For Bank Transfer, if Online Bank Transfer or Wire Transfers.\n" + }, + "method": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal\n\nFor Japan Payment Processing Valid Values:\n- 1 Banking Data\n- 2 Authorization Data\n" + } + } + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentId": { + "type": "string", + "maxLength": 28, + "description": "This field is to accept the id of credit/capture in the body of L1 requests so the type of void can be identified and processed correctly downstream." + } + } + } + }, + "example": { + "clientReferenceInformation": { + "transactionId": "" + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2VoidsPost200Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\n" + }, + "originalTransactionAmount": { + "type": "string", + "description": "Amount of the original transaction." + }, + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/pts/v2/voids/4963015122056179201545", + "method": "GET" + } + }, + "id": "4963015122056179201545", + "submitTimeUtc": "2017-06-01T071832Z", + "status": "VOIDED", + "clientReferenceInformation": { + "transactionId": "909080801" + }, + "orderInformation": { + "amountDetails": { + "currency": "USD" + } + }, + "voidAmountDetails": { + "currency": "usd", + "voidAmount": "102.21" + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2VoidsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - NOT_VOIDABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2VoidsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + } + } + } + } + } + } + }, + "/pts/v1/transaction-batches": { + "get": { + "summary": "Get a List of Batch Files", + "description": "Provide the search range", + "tags": [ + "TransactionBatches" + ], + "operationId": "getTransactionBatches", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Batches", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html" + }, + "x-queryParameterDefaults": { + "startTime": "2020-02-22T01:47:57.000Z", + "endTime": "2020-02-22T22:47:57.000Z" + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", + "required": true, + "type": "string", + "format": "date-time" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "title": "ptsV1TransactionBatchesGet200Response", + "type": "object", + "properties": { + "transactionBatches": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier assigned to the batch file.", + "example": "psy8s1d", + "pattern": "^[a-zA-Z0-9_+-]*$", + "minLength": 1, + "maxLength": 8 + }, + "uploadDate": { + "type": "string", + "description": "Date when the batch template was update.", + "example": "2018-01-01" + }, + "completionDate": { + "type": "string", + "description": "The date when the batch template processing completed.", + "example": "2018-01-01" + }, + "transactionCount": { + "type": "integer", + "description": "Number of transactions in the transaction.", + "example": 7534 + }, + "acceptedTransactionCount": { + "type": "integer", + "description": "Number of transactions accepted.", + "example": 50013 + }, + "rejectedTransactionCount": { + "type": "string", + "description": "Number of transactions rejected.", + "example": 2508 + }, + "status": { + "type": "string", + "description": "The status of you batch template processing.", + "example": "Completed" + } + } + } + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "/pts/v1/transaction-batches" + }, + "method": { + "type": "string", + "example": "GET" + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "400": { + "description": "Bad Request", + "schema": { + "title": "ptsV1TransactionBatchesGet400Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "401": { + "description": "Not Authorized", + "schema": { + "title": "ptsV1TransactionBatchesGet401Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "403": { + "description": "No Authenticated", + "schema": { + "title": "ptsV1TransactionBatchesGet403Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "404": { + "description": "No Reports Found", + "schema": { + "title": "ptsV1TransactionBatchesGet404Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "500": { + "description": "Bad Gateway", + "schema": { + "title": "ptsV1TransactionBatchesGet500Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of status" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above." + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + } + } + } + }, + "/pts/v1/transaction-batches/{id}": { + "get": { + "summary": "Get Individual Batch File", + "description": "Provide the search range", + "tags": [ + "TransactionBatches" + ], + "operationId": "getTransactionBatchId", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Batches", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html" + }, + "x-depends": { + "example": { + "path": "/pts/v1/transaction-batches", + "verb": "get", + "exampleId": "Get a list of batch files" + }, + "fieldMapping": [ + { + "sourceField": "transactionBatches[0].id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The batch id assigned for the template.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "title": "ptsV1TransactionBatchesIdGet200Response", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier assigned to the batch file.", + "example": "psy8s1d", + "pattern": "^[a-zA-Z0-9_+-]*$", + "minLength": 1, + "maxLength": 8 + }, + "uploadDate": { + "type": "string", + "description": "Date when the batch template was update.", + "example": "2018-01-01" + }, + "completionDate": { + "type": "string", + "description": "The date when the batch template processing completed.", + "example": "2018-01-01" + }, + "transactionCount": { + "type": "integer", + "description": "Number of transactions in the transaction.", + "example": 7534 + }, + "acceptedTransactionCount": { + "type": "integer", + "description": "Number of transactions accepted.", + "example": 50013 + }, + "rejectedTransactionCount": { + "type": "string", + "description": "Number of transactions rejected.", + "example": 2508 + }, + "status": { + "type": "string", + "description": "The status of you batch template processing.", + "example": "Completed" + }, + "_links": { + "type": "object", + "properties": { + "transactions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "Self link for this request", + "example": "/tss/v2/transactions/5289798134206292501013" + }, + "method": { + "type": "string" + } + } + } + } + } + } + }, + "type": "object" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "title": "ptsV1TransactionBatchesGet400Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "401": { + "description": "Not Authorized", + "schema": { + "title": "ptsV1TransactionBatchesGet401Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "403": { + "description": "No Authenticated", + "schema": { + "title": "ptsV1TransactionBatchesGet403Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "404": { + "description": "No Reports Found", + "schema": { + "title": "ptsV1TransactionBatchesGet404Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "502": { + "description": "Bad Gateway", + "schema": { + "title": "ptsV1TransactionBatchesGet502Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of status" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above." + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + } + } + } + }, + "/pts/v1/transaction-batch-details/{id}": { + "get": { + "tags": [ + "TransactionBatches" + ], + "summary": "Get Transaction Details for a given Batch Id", + "description": "Provides real-time detailed status information about the transactions that you previously uploaded in the Business Center or processed with the Offline Transaction File Submission service.\n", + "operationId": "getTransactionBatchDetails", + "x-streaming": true, + "x-devcenter-metaData": { + "categoryTag": "Transaction_Batches", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-transaction-batch-api/txn_batch_api_intro.html", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "text/csv", + "application/xml", + "text/vnd.cybersource.map-csv" + ] + } + }, + "x-queryParameterDefaults": { + "uploadDate": "2019-08-30", + "status": "Rejected" + }, + "x-depends": { + "example": { + "path": "/pts/v1/transaction-batches/{id}", + "verb": "get", + "exampleId": "Get individual batch file" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + }, + "produces": [ + "text/csv", + "application/xml", + "text/vnd.cybersource.map-csv" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The batch id assigned for the template.", + "required": true, + "type": "string" + }, + { + "name": "uploadDate", + "in": "query", + "description": "Date in which the original batch file was uploaded. Date must be in ISO-8601 format.\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n**Example date format:**\n - yyyy-MM-dd\n", + "required": false, + "type": "string", + "format": "date" + }, + { + "name": "status", + "in": "query", + "description": "Allows you to filter by rejected response.\n\nValid values:\n- Rejected\n", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "examples": { + "text/vnd.cybersource.map-csv": "merchantID=testrest,batchID=01lzdah4\n\nmerchantReferenceCode=7vvc3645,purchaseTotals_currency=GBP,ccAuthReversalReply_processorResponse=00,ccAuthReversalReply_requestDateTime=2019-03-08 10:50:23 GMT,ccAuthReversalReply_amount=8.00,decision=ACCEPT,requestID=5520424090516341303098,merchantReferenceCode=7Y3E112F,requestToken=Ahj//wSTLNz0kRV6lzumGxkyXTozqrWfMbTWSi9xQvvlQFRe4pB8qekDsTiONhk0kyxdfAw3sUHMmWbkw9bmwBX9cAAA+Rh4,reasonCode=100,ccAuthReversalReply_reasonCode=100\n", + "text/csv": "Submission Date/Time,Submission File ID,link_to_request,request_id,transaction_date,cybs_mid,processor_mid,hierarchy_id,trans_ref_number,merchant_ref_number,transaction_type,amount,transaction_amount_currency,payment_method,payment_type,account_suffix,decision,reason_code,reserved,auth_trans_ref_number,auth_date,auth_request_id,auth_amount,auth_currency,auth_code,auth_reason_code,auth_rcode,merchant_defined_data1,merchant_defined_data2,merchant_defined_data3,merchant_defined_data4\n2019-03-08 10:50:23 GMT,01lzdah4,5520424090516341303098,5520424090516341303098,2019-03-08 10:53:29 GMT,testrest,,101011000871000110003,51512455,4,ics_auth,8.00,GBP ,credit card,Visa,1111,,100,,,,5520424090516341303098,,,,,,3817,,,\n", + "application/xml": "\n\n\n \n 5520424090516341303098\n 5520424090516341303098\n 2019-03-08 10:53:29 GMT\n pa_gpn\n 101011000871000110003\n 51512455\n 7vvc3645\n ics_auth\n 8.00\n GBP\n credit card\n Visa\n 1111\n 100\n \n 5520424090516341303098\n \n 3817\n \n\n" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "title": "ptsV1TransactionBatchDetailsGet400Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "401": { + "description": "Not Authorized", + "schema": { + "title": "ptsV1TransactionBatchDetailsGet401Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "403": { + "description": "No Authenticated", + "schema": { + "title": "ptsV1TransactionBatchDetailsGet403Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "404": { + "description": "No Reports Found", + "schema": { + "title": "ptsV1TransactionBatchDetailsGet404Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string" + }, + "message": { + "type": "string" + }, + "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.\n" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above.\n" + } + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "502": { + "description": "Bad Gateway", + "schema": { + "title": "ptsV1TransactionBatchDetailsGet502Response", + "type": "object", + "properties": { + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of status" + }, + "message": { + "type": "string", + "description": "The detailed message related to the status and reason listed above." + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + } + } + } + }, + "/tms/v2/customers": { + "post": { + "summary": "Create a Customer", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "postCustomerRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Payment Instruments.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "shippingAddress": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Addresses.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Customer Token." + }, + "objectInformation": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Name or title of the customer.\n", + "maxLength": 60 + }, + "comment": { + "type": "string", + "description": "Comments that you can make about the customer.\n", + "maxLength": 150 + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerID": { + "type": "string", + "description": "Your identifier for the customer.\n", + "maxLength": 100 + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's primary email address, including the full domain name.\n" + } + } + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Client-generated order reference or tracking number.\n", + "maxLength": 50 + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "Object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" + }, + "value": { + "type": "string", + "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", + "maxLength": 100 + } + } + } + }, + "defaultPaymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Payment Instrument\n" + } + } + }, + "defaultShippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Shipping Address\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Customer token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Customer token.\n", + "properties": { + "defaultPaymentInstrument": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + }, + "defaultShippingAddress": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Customer" + ], + "operationId": "postCustomer", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "201": { + "description": "A new Customer has been created.", + "headers": { + "Location": { + "description": "Location of the Customer.", + "type": "string" + }, + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "title": "TmsV2CustomersResponse", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Payment Instruments.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "shippingAddress": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Addresses.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Customer Token." + }, + "objectInformation": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Name or title of the customer.\n", + "maxLength": 60 + }, + "comment": { + "type": "string", + "description": "Comments that you can make about the customer.\n", + "maxLength": 150 + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerID": { + "type": "string", + "description": "Your identifier for the customer.\n", + "maxLength": 100 + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's primary email address, including the full domain name.\n" + } + } + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Client-generated order reference or tracking number.\n", + "maxLength": 50 + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "Object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" + }, + "value": { + "type": "string", + "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", + "maxLength": 100 + } + } + } + }, + "defaultPaymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Payment Instrument\n" + } + } + }, + "defaultShippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Shipping Address\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Customer token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Customer token.\n", + "properties": { + "defaultPaymentInstrument": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + }, + "defaultShippingAddress": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "409": { + "description": "Conflict. The token is linked to a Payment Instrument.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Customer", + "value": { + "buyerInformation": { + "merchantCustomerID": "Your customer identifier", + "email": "test@cybs.com" + }, + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "merchantDefinedInformation": [ + { + "name": "data1", + "value": "Your customer data" + } + ] + } + } + } + } + }, + "/tms/v2/customers/{customerTokenId}": { + "get": { + "summary": "Retrieve a Customer", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Customer" + ], + "operationId": "getCustomer", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "customerTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Customer associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Payment Instruments.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "shippingAddress": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Addresses.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Customer Token." + }, + "objectInformation": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Name or title of the customer.\n", + "maxLength": 60 + }, + "comment": { + "type": "string", + "description": "Comments that you can make about the customer.\n", + "maxLength": 150 + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerID": { + "type": "string", + "description": "Your identifier for the customer.\n", + "maxLength": 100 + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's primary email address, including the full domain name.\n" + } + } + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Client-generated order reference or tracking number.\n", + "maxLength": 50 + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "Object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" + }, + "value": { + "type": "string", + "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", + "maxLength": 100 + } + } + } + }, + "defaultPaymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Payment Instrument\n" + } + } + }, + "defaultShippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Shipping Address\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Customer token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Customer token.\n", + "properties": { + "defaultPaymentInstrument": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + }, + "defaultShippingAddress": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "patch": { + "summary": "Update a Customer", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "if-match", + "in": "header", + "description": "Contains an ETag value from a GET request to make the request conditional.", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "patchCustomerRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Payment Instruments.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "shippingAddress": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Addresses.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Customer Token." + }, + "objectInformation": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Name or title of the customer.\n", + "maxLength": 60 + }, + "comment": { + "type": "string", + "description": "Comments that you can make about the customer.\n", + "maxLength": 150 + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerID": { + "type": "string", + "description": "Your identifier for the customer.\n", + "maxLength": 100 + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's primary email address, including the full domain name.\n" + } + } + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Client-generated order reference or tracking number.\n", + "maxLength": 50 + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "Object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" + }, + "value": { + "type": "string", + "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", + "maxLength": 100 + } + } + } + }, + "defaultPaymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Payment Instrument\n" + } + } + }, + "defaultShippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Shipping Address\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Customer token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Customer token.\n", + "properties": { + "defaultPaymentInstrument": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + }, + "defaultShippingAddress": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Customer" + ], + "operationId": "patchCustomer", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "customerTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Customer associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Payment Instruments.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "shippingAddress": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Addresses.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Customer Token." + }, + "objectInformation": { + "type": "object", + "properties": { + "title": { + "type": "string", + "description": "Name or title of the customer.\n", + "maxLength": 60 + }, + "comment": { + "type": "string", + "description": "Comments that you can make about the customer.\n", + "maxLength": 150 + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerID": { + "type": "string", + "description": "Your identifier for the customer.\n", + "maxLength": 100 + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's primary email address, including the full domain name.\n" + } + } + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Client-generated order reference or tracking number.\n", + "maxLength": 50 + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "Object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The number you assign as the name for your merchant-defined data or secure field. Valid values are data1 to data4 and sensitive1 to sensitive4\n\nFor example, to set the name for merchant-defined data 2 field, you would reference merchantDefinedInformation[x].name as data2\nValid values:\n- data1\n- data2\n- data3\n- data4\n- sensitive1\n- sensitive2\n- sensitive3\n- sensitive4\n" + }, + "value": { + "type": "string", + "description": "The value you assign for your merchant-defined data field.\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n", + "maxLength": 100 + } + } + } + }, + "defaultPaymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Payment Instrument\n" + } + } + }, + "defaultShippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the Customers default Shipping Address\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Customer token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Customer token.\n", + "properties": { + "defaultPaymentInstrument": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + }, + "defaultShippingAddress": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "412": { + "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "conflict", + "message": "Action cannot be performed as the if-match header value does not match the token etag" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Update Customer", + "value": { + "buyerInformation": { + "merchantCustomerID": "Your customer identifier", + "email": "test@cybs.com" + }, + "clientReferenceInformation": { + "code": "TC50171_3" + }, + "merchantDefinedInformation": [ + { + "name": "data1", + "value": "Your customer data" + } + ] + } + }, + "example1": { + "summary": "Update Customers default Payment Instrument", + "value": { + "defaultPaymentInstrument": { + "id": "paymentInstrumentTokenId" + } + } + }, + "example2": { + "summary": "Update Customers default Shipping Address", + "value": { + "defaultShippingAddress": { + "id": "shippingAddressTokenId" + } + } + } + } + }, + "delete": { + "summary": "Delete a Customer", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Customer" + ], + "operationId": "deleteCustomer", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "customerTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "The request is fulfilled but does not need to return a body", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v2/customers/{customerTokenId}/shipping-addresses": { + "post": { + "summary": "Create a Customer Shipping Address", + "description": "Include an existing TMS Customer token id in the request URI.\n* A Customer token can be created by calling: **POST */tms/v2/customers***\n", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "postCustomerShippingAddressRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + ], + "tags": [ + "Customer Shipping Address" + ], + "operationId": "postCustomerShippingAddress", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "customerTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "201": { + "description": "A new Shipping Address has been created.", + "headers": { + "Location": { + "description": "Location of the Shipping Address.", + "type": "string" + }, + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "409": { + "description": "Conflict. The token is linked to a Payment Instrument.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Customer Default Shipping Address", + "value": { + "default": "true", + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + }, + "example1": { + "summary": "Create Customer Non-Default Shipping Address", + "value": { + "default": "false", + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + } + } + }, + "get": { + "summary": "List Shipping Addresses for a Customer", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "offset", + "in": "query", + "description": "Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0.", + "required": false, + "type": "integer", + "format": "int64", + "default": 0, + "minimum": 0 + }, + { + "name": "limit", + "in": "query", + "description": "The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100.", + "required": false, + "type": "integer", + "format": "int64", + "default": 20, + "minimum": 1, + "maximum": 100 + } + ], + "tags": [ + "Customer Shipping Address" + ], + "operationId": "getCustomerShippingAddressesList", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "customerTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns all existing Shipping Addresses associated with the supplied token id.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + }, + "X-Total-Count": { + "description": "The total number of Shipping Addresses associated with the Customer.", + "type": "string" + } + }, + "schema": { + "title": "ShippingAddressListForCustomer", + "type": "object", + "readOnly": true, + "description": "A paginated container of Shipping Addresses.\n", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the current page.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" + } + } + }, + "first": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the first page.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" + } + } + }, + "prev": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the previous page.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" + } + } + }, + "next": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the next page.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" + } + } + }, + "last": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the last page.\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses?offset=0&limit=1" + } + } + } + } + }, + "offset": { + "type": "integer", + "readOnly": true, + "default": 0, + "example": 0, + "description": "The offset parameter supplied in the request." + }, + "limit": { + "type": "integer", + "readOnly": true, + "default": 20, + "example": 20, + "description": "The limit parameter supplied in the request." + }, + "count": { + "type": "integer", + "readOnly": true, + "example": 1, + "description": "The number of Shipping Addresses returned in the array." + }, + "total": { + "type": "integer", + "readOnly": true, + "example": 1, + "description": "The total number of Shipping Addresses associated with the Customer." + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Shipping Address Resources.\n", + "properties": { + "shippingAddresses": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v2/customers/{customerTokenId}/shipping-addresses/{shippingAddressTokenId}": { + "get": { + "summary": "Retrieve a Customer Shipping Address", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "shippingAddressTokenId", + "in": "path", + "description": "The TokenId of an shipping address.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Customer Shipping Address" + ], + "operationId": "getCustomerShippingAddress", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/shipping-addresses", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "shippingAddressTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Shipping Address associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "patch": { + "summary": "Update a Customer Shipping Address", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "shippingAddressTokenId", + "in": "path", + "description": "The TokenId of an shipping address.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "if-match", + "in": "header", + "description": "Contains an ETag value from a GET request to make the request conditional.", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "patchCustomerShippingAddressRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + } + ], + "tags": [ + "Customer Shipping Address" + ], + "operationId": "patchCustomersShippingAddress", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-example": { + "example0": { + "summary": "Update Customer Default Shipping Address", + "value": { + "shipTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + } + } + } + }, + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/shipping-addresses", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "shippingAddressTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Shipping Address associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customers Shipping Address\n", + "example": "/tms/v2/customers/1234567890123456789/shipping-addresses/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Shipping Address Token." + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer shipping address is the dafault.\nValid values:\n - `true`: Shipping Address is customer's default.\n - `false`: Shipping Address is not customer's default.\n" + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Company associated with the shipping address.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the shipping address. Use 2 character the State,\nProvince, and Territory Codes for the United States and Canada.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping 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\nExample 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\nExample A1B 2C3\n\n**American Express Direct**\\\nBefore sending the postal code to the processor, CyberSource removes all nonalphanumeric characters and, if the\nremaining value is longer than nine characters, truncates the value starting from the right side.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character ISO Standard Country Codes.\n", + "maxLength": 2 + }, + "email": { + "type": "string", + "maxLength": 320, + "description": "Email associated with the shipping address.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Shipping Address token." + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "412": { + "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "conflict", + "message": "Action cannot be performed as the if-match header value does not match the token etag" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Delete a Customer Shipping Address", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "shippingAddressTokenId", + "in": "path", + "description": "The TokenId of an shipping address.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Customer Shipping Address" + ], + "operationId": "deleteCustomerShippingAddress", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/shipping-addresses", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "shippingAddressTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "The request is fulfilled but does not need to return a body", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v2/customers/{customerTokenId}/payment-instruments": { + "post": { + "summary": "Create a Customer Payment Instrument", + "description": "Include an existing TMS Customer & Instrument Identifier token id in the request.\n* A Customer token can be created by calling: **POST */tms/v2/customers***\n* An Instrument Identifier token can be created by calling: **POST */tms/v1/instrumentidentifiers***\n", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "postCustomerPaymentInstrumentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Customer Payment Instrument" + ], + "operationId": "postCustomerPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "customerTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "201": { + "description": "A new Payment Instrument has been created.", + "headers": { + "Location": { + "description": "Location of the Payment Instrument.", + "type": "string" + }, + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "409": { + "description": "Conflict. The token is linked to a Payment Instrument.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Customer Default Payment Instrument (Card)", + "value": { + "default": "true", + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "type": "001" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + }, + "example1": { + "summary": "Create Customer Non-Default Payment Instrument (Card)", + "value": { + "default": "false", + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "type": "001" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + }, + "example2": { + "summary": "Create Customer Payment Instrument (Bank Account)", + "value": { + "bankAccount": { + "type": "savings" + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD", + "dateOfBirth": "2000-12-13", + "personalIdentification": [ + { + "id": "57684432111321", + "type": "driver license", + "issuedBy": { + "administrativeArea": "CA" + } + } + ] + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "processingInformation": { + "bankTransferOptions": { + "SECCode": "WEB" + } + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + }, + "example3": { + "summary": "Create Customer Payment Instrument (Pinless Debit)", + "value": { + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "type": "001", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2020", + "useAs": "pinless debit" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + } + } + }, + "get": { + "summary": "List Payment Instruments for a Customer", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "offset", + "in": "query", + "description": "Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0.", + "required": false, + "type": "integer", + "format": "int64", + "default": 0, + "minimum": 0 + }, + { + "name": "limit", + "in": "query", + "description": "The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100.", + "required": false, + "type": "integer", + "format": "int64", + "default": 20, + "minimum": 1, + "maximum": 100 + } + ], + "tags": [ + "Customer Payment Instrument" + ], + "operationId": "getCustomerPaymentInstrumentsList", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns all existing Payment Instruments associated with the supplied token id.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + }, + "X-Total-Count": { + "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier.", + "type": "string" + } + }, + "schema": { + "title": "PaymentInstrumentList", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the current page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "first": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the first page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "prev": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the previous page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "next": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the next page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "last": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the last page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + } + } + }, + "offset": { + "type": "integer", + "readOnly": true, + "default": 0, + "example": 0, + "description": "The offset parameter supplied in the request." + }, + "limit": { + "type": "integer", + "readOnly": true, + "default": 20, + "example": 20, + "description": "The limit parameter supplied in the request." + }, + "count": { + "type": "integer", + "readOnly": true, + "example": 1, + "description": "The number of Payment Instruments returned in the array." + }, + "total": { + "type": "integer", + "readOnly": true, + "example": 1, + "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier." + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Payment Instrument Resources.\n", + "properties": { + "paymentInstruments": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v2/customers/{customerTokenId}/payment-instruments/{paymentInstrumentTokenId}": { + "get": { + "summary": "Retrieve a Customer Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "paymentInstrumentTokenId", + "in": "path", + "description": "The TokenId of a payment instrument.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Customer Payment Instrument" + ], + "operationId": "getCustomerPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Payment Instrument associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "patch": { + "summary": "Update a Customer Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "paymentInstrumentTokenId", + "in": "path", + "description": "The TokenId of a payment instrument.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "if-match", + "in": "header", + "description": "Contains an ETag value from a GET request to make the request conditional.", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "patchCustomerPaymentInstrumentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Customer Payment Instrument" + ], + "operationId": "patchCustomersPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Payment Instrument associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "412": { + "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "conflict", + "message": "Action cannot be performed as the if-match header value does not match the token etag" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Delete a Customer Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "customerTokenId", + "in": "path", + "description": "The TokenId of a customer.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "paymentInstrumentTokenId", + "in": "path", + "description": "The TokenId of a payment instrument.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Customer Payment Instrument" + ], + "operationId": "deleteCustomerPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v2/customers/{customerTokenId}/payment-instruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "The request is fulfilled but does not need to return a body", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v1/paymentinstruments": { + "post": { + "summary": "Create a Payment Instrument", + "description": "Include an existing TMS Instrument Identifier id in the request body.\n* An Instrument Identifier token can be created by calling: **POST */tms/v1/instrumentidentifiers***\n", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "postPaymentInstrumentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Payment Instrument" + ], + "operationId": "postPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "201": { + "description": "Returns an existing Payment Instrument associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Payment Instrument (Card)", + "value": { + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "type": "visa" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + }, + "example1": { + "summary": "Create Payment Instrument (Bank Account)", + "value": { + "bankAccount": { + "type": "savings" + }, + "buyerInformation": { + "companyTaxID": "12345", + "currency": "USD", + "dateOfBirth": "2000-12-13", + "personalIdentification": [ + { + "id": "57684432111321", + "type": "driver license", + "issuedBy": { + "administrativeArea": "CA" + } + } + ] + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "processingInformation": { + "bankTransferOptions": { + "SECCode": "WEB" + } + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + }, + "example2": { + "summary": "Create Payment Instrument (Pinless Debit)", + "value": { + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "type": "visa", + "issueNumber": "01", + "startMonth": "01", + "startYear": "2020", + "useAs": "pinless debit" + }, + "billTo": { + "firstName": "John", + "lastName": "Doe", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "test@cybs.com", + "phoneNumber": "4158880000" + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + } + } + } + }, + "/tms/v1/paymentinstruments/{paymentInstrumentTokenId}": { + "get": { + "summary": "Retrieve a Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "paymentInstrumentTokenId", + "in": "path", + "description": "The TokenId of a payment instrument.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "tags": [ + "Payment Instrument" + ], + "operationId": "getPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/paymentinstruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Payment Instrument associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "patch": { + "summary": "Update a Payment Instrument", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "paymentInstrumentTokenId", + "in": "path", + "description": "The TokenId of a payment instrument.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "if-match", + "in": "header", + "description": "Contains an ETag value from a GET request to make the request conditional.", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "patchPaymentInstrumentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + } + ], + "tags": [ + "Payment Instrument" + ], + "operationId": "patchPaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/paymentinstruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Payment Instrument associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "412": { + "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "conflict", + "message": "Action cannot be performed as the if-match header value does not match the token etag" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Update Payment Instrument", + "value": { + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "type": "visa" + }, + "billTo": { + "firstName": "Jack", + "lastName": "Smith", + "company": "CyberSource", + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US", + "email": "updatedemail@cybs.com", + "phoneNumber": "4158888674" + }, + "instrumentIdentifier": { + "id": "instrumentIdentifierTokenId" + } + } + } + } + }, + "delete": { + "summary": "Delete a Payment Instrument", + "tags": [ + "Payment Instrument" + ], + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "paymentInstrumentTokenId", + "in": "path", + "description": "The TokenId of a payment instrument.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "operationId": "deletePaymentInstrument", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/paymentinstruments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "paymentInstrumentTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "The request is fulfilled but does not need to return a body", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v1/instrumentidentifiers": { + "post": { + "summary": "Create an Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "postInstrumentIdentifierRequest", + "in": "body", + "description": "Specify either a Card, Bank Account or Enrollable Card", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "postInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "200": { + "description": "Returns an existing Instrument Identifier associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + }, + "201": { + "description": "A new Instrument Identifier has been created.", + "headers": { + "Location": { + "description": "Location of the Instrument Identifier.", + "type": "string" + }, + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create Instrument Identifier (Card)", + "value": { + "card": { + "number": "4111111111111111" + } + } + }, + "example1": { + "summary": "Create Instrument Identifier (Bank Account)", + "value": { + "bankAccount": { + "number": "4100", + "routingNumber": "071923284" + } + } + }, + "example2": { + "summary": "Create Instrument Identifier (Card & Enroll for Network Token)", + "value": { + "type": "enrollable card", + "card": { + "number": "4111111111111111", + "expirationMonth": "12", + "expirationYear": "2031", + "securityCode": "123" + }, + "billTo": { + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US" + } + } + } + } + } + }, + "/tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}": { + "get": { + "summary": "Retrieve an Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "instrumentIdentifierTokenId", + "in": "path", + "description": "The TokenId of a Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 12, + "maxLength": 32 + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "getInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "instrumentIdentifierTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Instrument Identifier associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + }, + "patch": { + "summary": "Update an Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "instrumentIdentifierTokenId", + "in": "path", + "description": "The TokenId of a Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 12, + "maxLength": 32 + }, + { + "name": "if-match", + "in": "header", + "description": "Contains an ETag value from a GET request to make the request conditional.", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "patchInstrumentIdentifierRequest", + "in": "body", + "description": "Specify the previous transaction ID to update.", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "patchInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "instrumentIdentifierTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns an existing Instrument Identifier associated with the supplied token id.", + "headers": { + "ETag": { + "description": "An ETag is an identifier assigned to a specific version of a resource.", + "type": "string" + }, + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "412": { + "description": "Precondition Failed: The If-Match request header value does not match the current resources ETag", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "conflict", + "message": "Action cannot be performed as the if-match header value does not match the token etag" + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Update Instrument Identifier previousTransactionId", + "value": { + "processingInformation": { + "authorizationOptions": { + "initiator": { + "merchantInitiatedTransaction": { + "previousTransactionId": "123456789012345" + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Delete an Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "instrumentIdentifierTokenId", + "in": "path", + "description": "The TokenId of a Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 12, + "maxLength": 32 + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "deleteInstrumentIdentifier", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "instrumentIdentifierTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "204": { + "description": "The request is fulfilled but does not need to return a body", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "409": { + "description": "Conflict. The token is linked to a Payment Instrument.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}/paymentinstruments": { + "get": { + "summary": "List Payment Instruments for an Instrument Identifier", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "instrumentIdentifierTokenId", + "in": "path", + "description": "The TokenId of a Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 12, + "maxLength": 32 + }, + { + "name": "offset", + "in": "query", + "description": "Starting record in zero-based dataset that should be returned as the first object in the array. Default is 0.", + "required": false, + "type": "integer", + "format": "int64", + "default": 0, + "minimum": 0 + }, + { + "name": "limit", + "in": "query", + "description": "The maximum number that can be returned in the array starting from the offset record in zero-based dataset. Default is 20, maximum is 100.", + "required": false, + "type": "integer", + "format": "int64", + "default": 20, + "minimum": 1, + "maximum": 100 + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "getInstrumentIdentifierPaymentInstrumentsList", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "instrumentIdentifierTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Returns all existing Payment Instruments associated with the supplied token id.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally-unique ID associated with your request.", + "type": "string" + }, + "X-Total-Count": { + "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier.", + "type": "string" + } + }, + "schema": { + "title": "PaymentInstrumentList", + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the current page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "first": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the first page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "prev": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the previous page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "next": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the next page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + }, + "last": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the last page.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments?offset=0&limit=1" + } + } + } + } + }, + "offset": { + "type": "integer", + "readOnly": true, + "default": 0, + "example": 0, + "description": "The offset parameter supplied in the request." + }, + "limit": { + "type": "integer", + "readOnly": true, + "default": 20, + "example": 20, + "description": "The limit parameter supplied in the request." + }, + "count": { + "type": "integer", + "readOnly": true, + "example": 1, + "description": "The number of Payment Instruments returned in the array." + }, + "total": { + "type": "integer", + "readOnly": true, + "example": 1, + "description": "The total number of Payment Instruments associated with the Customer or Instrument Identifier." + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Payment Instrument Resources.\n", + "properties": { + "paymentInstruments": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Payment Instrument.\n", + "example": "/tms/v2/customers/1234567890123456789/payment-instruments" + } + } + }, + "customer": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Customer.\n", + "example": "/tms/v2/customers/1234567890123456789" + } + } + } + } + }, + "id": { + "type": "string", + "minLength": 1, + "maxLength": 32, + "description": "The id of the Payment Instrument Token." + }, + "object": { + "type": "string", + "readOnly": true, + "example": "paymentInstrument", + "description": "The type of token.\n\nValid values:\n- paymentInstrument\n" + }, + "default": { + "type": "boolean", + "description": "Flag that indicates whether customer payment instrument is the dafault.\nValid values:\n - `true`: Payment instrument is customer's default.\n - `false`: Payment instrument is not customer's default.\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "bankAccount": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 18, + "description": "Account type.\n\nValid values:\n - checking : C\n - general ledger : G This value is supported only on Wells Fargo ACH\n - savings : S (U.S. dollars only)\n - corporate checking : X (U.S. dollars only)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "type": { + "type": "string", + "description": "Value that indicates the card type. Valid v2 : v1 - description values:\n * 001 : visa\n * 002 : mastercard - Eurocard\u2014European regional brand of Mastercard\n * 003 : american express\n * 004 : discover\n * 005 : diners club\n * 006 : carte blanche\n * 007 : jcb\n * 008 : optima\n * 011 : twinpay credit\n * 012 : twinpay debit\n * 013 : walmart\n * 014 : enRoute\n * 015 : lowes consumer\n * 016 : home depot consumer\n * 017 : mbna\n * 018 : dicks sportswear\n * 019 : casual corner\n * 020 : sears\n * 021 : jal\n * 023 : disney\n * 024 : maestro uk domestic\n * 025 : sams club consumer\n * 026 : sams club business\n * 028 : bill me later\n * 029 : bebe\n * 030 : restoration hardware\n * 031 : delta online \u2014 use this value only for Ingenico ePayments. For other processors, use 001 for all Visa card types.\n * 032 : solo\n * 033 : visa electron\n * 034 : dankort\n * 035 : laser\n * 036 : carte bleue \u2014 formerly Cartes Bancaires\n * 037 : carta si\n * 038 : pinless debit\n * 039 : encoded account\n * 040 : uatp\n * 041 : household\n * 042 : maestro international\n * 043 : ge money uk\n * 044 : korean cards\n * 045 : style\n * 046 : jcrew\n * 047 : payease china processing ewallet\n * 048 : payease china processing bank transfer\n * 049 : meijer private label\n * 050 : hipercard \u2014 supported only by the Comercio Latino processor.\n * 051 : aura \u2014 supported only by the Comercio Latino processor.\n * 052 : redecard\n * 054 : elo \u2014 supported only by the Comercio Latino processor.\n * 055 : capital one private label\n * 056 : synchrony private label\n * 057 : costco private label\n * 060 : mada\n * 062 : china union pay\n * 063 : falabella private label\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 2, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`.\nValid values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "useAs": { + "type": "string", + "example": "pinless debit", + "description": "'Payment Instrument was created / updated as part of a pinless debit transaction.'\n" + }, + "tokenizedInformation": { + "type": "object", + "properties": { + "requestorID": { + "type": "string", + "maxLength": 11, + "description": "Value that identifies your business and indicates that the cardholder\u2019s account number is tokenized. This value\nis assigned by the token service provider and is unique within the token service provider\u2019s database.\n\n**Note** This field is supported only for **CyberSource through VisaNet** and **FDC Nashville Global**.\n" + }, + "transactionType": { + "type": "string", + "maxLength": 1, + "description": "Type of transaction that provided the token data. This value does not specify the token service provider; it\nspecifies the entity that provided you with information about the token.\n\nSet the value for this field to 1. An application on the customer\u2019s mobile device provided the token data.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "companyTaxID": { + "type": "string", + "maxLength": 9, + "description": "Company\u2019s tax identifier. This is only used for eCheck service.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "Currency used for the order. Use the three-character I[ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nFor details about currency as used in partial authorizations, see \"Features for Debit Cards and Prepaid Cards\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor 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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n" + }, + "dateOfBirth": { + "type": "string", + "format": "date", + "example": "1960-12-30", + "description": "Date of birth of the customer. Format: YYYY-MM-DD\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type.\n" + }, + "type": { + "type": "string", + "description": "The type of the identification.\n\nValid values:\n - driver license\n" + }, + "issuedBy": { + "type": "object", + "properties": { + "administrativeArea": { + "type": "string", + "description": "The State or province where the customer\u2019s driver\u2019s license was issued.\n\nUse the two-character State, Province, and Territory Codes for the United States and Canada.\n", + "maxLength": 20 + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "billPaymentProgramEnabled": { + "type": "boolean", + "description": "Flag that indicates that this is a payment for a bill or for an existing contractual loan.\nFor processor-specific details, see the `bill_payment` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nValid values:\n- `true`: Bill payment or loan payment.\n- `false` (default): Not a bill payment or loan payment.\n" + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "SECCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the authorization method for the transaction.\n\n#### TeleCheck\nValid values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n\nFor details, see `ecp_sec_code` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate contact information for your business,such as an email address or URL.\nThis value might be displayed on the cardholder\u2019s statement.\nWhen you do not include this value in your capture or credit request, CyberSource uses the merchant URL from your CyberSource account.\nImportant This value must consist of English characters\n", + "maxLength": 13 + } + } + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "minLength": 12, + "maxLength": 32, + "description": "The id of the Instrument Identifier token linked to the Payment Instrument.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Payment Instrument token.\n" + } + } + }, + "_embedded": { + "type": "object", + "readOnly": true, + "description": "Additional resources for the Payment Instrument token.\n", + "properties": { + "instrumentIdentifier": { + "readOnly": true, + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + } + } + }, + "/tms/v1/instrumentidentifiers/{instrumentIdentifierTokenId}/enrollment": { + "post": { + "summary": "Enroll an Instrument Identifier for Network Tokenization", + "parameters": [ + { + "name": "profile-id", + "in": "header", + "description": "The id of a profile containing user specific TMS configuration.", + "required": false, + "type": "string", + "minLength": 36, + "maxLength": 36, + "x-hide-field": true + }, + { + "name": "instrumentIdentifierTokenId", + "in": "path", + "description": "The TokenId of a Instrument Identifier.", + "required": true, + "type": "string", + "minLength": 12, + "maxLength": 32 + }, + { + "name": "postInstrumentIdentifierEnrollmentRequest", + "in": "body", + "description": "Specify Enrollable Card details", + "required": true, + "schema": { + "type": "object", + "properties": { + "_links": { + "type": "object", + "readOnly": true, + "properties": { + "self": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifier.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4" + } + } + }, + "paymentInstruments": { + "type": "object", + "readOnly": true, + "properties": { + "href": { + "type": "string", + "readOnly": true, + "description": "Link to the Instrument Identifiers Payment Instruments.\n", + "example": "tms/v1/instrumentidentifiers/9B8D20D13FF328CCE0539399D30A70N4/paymentinstruments" + } + } + } + } + }, + "id": { + "type": "string", + "description": "The id of the Instrument Identifier Token.\n" + }, + "object": { + "type": "string", + "readOnly": true, + "example": "instrumentIdentifier", + "description": "The type of token.\n\nValid values:\n- instrumentIdentifier\n" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the card number.\nValid values:\n- ACTIVE\n- CLOSED : The account has been closed.\n" + }, + "type": { + "type": "string", + "description": "The type of Instrument Identifier.\nValid values:\n- enrollable card\n" + }, + "card": { + "type": "object", + "description": "The expirationMonth, expirationYear and securityCode is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "number": { + "type": "string", + "minLength": 12, + "maxLength": 19, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the credit card expires.\n\nFormat: `YYYY`.\n" + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number.\n" + } + } + }, + "bankAccount": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The network token card association brand\nValid values:\n- visa\n- mastercard\n", + "example": "visa" + }, + "state": { + "type": "string", + "readOnly": true, + "example": "ACTIVE", + "description": "Issuers state for the network token\nValid values:\n- ACTIVE\n- SUSPENDED : This state can change to ACTIVE or DELETED.\n- DELETED : This is a final state for the network token.\n" + }, + "number": { + "type": "string", + "readOnly": true, + "description": "The token requestors customer\u2019s payment network token\n" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "Two-digit month in which the network token expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the network token expires.\n\nFormat: `YYYY`.\n" + }, + "cryptogram": { + "type": "string", + "readOnly": true, + "description": "Generated value used in conjunction with the network token for making a payment.\n", + "example": "CgAFRFYFPTFOfg5rj2ais9wQAAAAAM=" + }, + "card": { + "type": "object", + "readOnly": true, + "description": "The latest card details associated with the network token", + "properties": { + "suffix": { + "type": "string", + "readOnly": true, + "description": "The customer\u2019s latest payment card number suffix\n", + "example": "1111" + }, + "expirationMonth": { + "type": "string", + "readOnly": true, + "maxLength": 2, + "description": "\nTwo-digit month in which the customer\u2019s latest payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`.\n" + }, + "expirationYear": { + "type": "string", + "readOnly": true, + "maxLength": 4, + "description": "Four-digit year in which the customer\u2019s latest payment card expires.\n\nFormat: `YYYY`.\n" + } + } + } + } + }, + "issuer": { + "type": "object", + "readOnly": true, + "properties": { + "paymentAccountReference": { + "type": "string", + "readOnly": true, + "maxLength": 32, + "description": "This reference number serves as a link to the cardholder account and to all transactions for that account.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "authorizationOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n" + } + } + } + } + } + } + } + } + }, + "billTo": { + "type": "object", + "description": "This information is sent to the issuer as part of network token enrollment and is not stored under the Instrument Identifier token.\n", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Additional address information.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "description": "State or province of the billing address. Use the State, Province, and Territory Codes for the United States\nand Canada.\n" + }, + "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" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Payment card billing country. Use the two-character ISO Standard Country Codes.\n" + } + } + }, + "metadata": { + "type": "object", + "readOnly": true, + "properties": { + "creator": { + "type": "string", + "readOnly": true, + "description": "The creator of the Instrument Identifier token." + } + } + } + } + } + } + ], + "tags": [ + "Instrument Identifier" + ], + "operationId": "postInstrumentIdentifierEnrollment", + "x-devcenter-metaData": { + "categoryTag": "Token_Management", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-tms/intro.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "x-depends": { + "example": { + "path": "/tms/v1/instrumentidentifiers", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "instrumentIdentifierTokenId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "202": { + "description": "The request has been accepted for processing, but the processing has not been completed.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "204": { + "description": "The request is fulfilled but does not need to return a body", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + } + }, + "400": { + "description": "Bad Request: e.g. A required header value could be missing.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "Invalid Customer request body": { + "errors": [ + { + "type": "invalidRequest", + "message": "Invalid HTTP Body" + } + ] + } + } + }, + "403": { + "description": "403ForbiddenResponse: e.g. The profile might not have permission to perform the operation.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "403ForbiddenResponse", + "message": "Request not permitted" + } + ] + } + } + }, + "404": { + "description": "Token Not Found. The `tokenid` may not exist or was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Token not found" + } + ] + } + } + }, + "410": { + "description": "Token Not Available. The token has been deleted.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique ID associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notAvailable", + "message": "Token not available." + } + ] + } + } + }, + "424": { + "description": "Failed Dependency: e.g. The profile represented by the profile-id may not exist or the profile-id was entered incorrectly.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "notFound", + "message": "Profile not found" + } + ] + } + } + }, + "500": { + "description": "Unexpected error.", + "headers": { + "v-c-correlation-id": { + "description": "The mandatory correlation id passed by upstream (calling) system.", + "type": "string" + }, + "uniqueTransactionID": { + "description": "A globally unique id associated with your request.", + "type": "string" + } + }, + "examples": { + "application/json": { + "errors": [ + { + "type": "serverError", + "message": "Internal server error" + } + ] + } + }, + "schema": { + "type": "object", + "readOnly": true, + "properties": { + "errors": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of error." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed message related to the type stated above." + }, + "details": { + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "readOnly": true, + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the field that caused the error." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of the field that caused the error." + } + } + } + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Enroll Instrument Identifier for Network Tokenization", + "value": { + "type": "enrollable card", + "card": { + "expirationMonth": "12", + "expirationYear": "2031", + "securityCode": "123" + }, + "billTo": { + "address1": "1 Market St", + "locality": "San Francisco", + "administrativeArea": "CA", + "postalCode": "94105", + "country": "US" + } + } + } + } + } + }, + "/flex/v1/keys": { + "x-name": "Generate Key", + "x-description": "Generate a one-time use public key and key ID to encrypt the card number in the follow-on Tokenize Card request. The key used to encrypt the card number on the cardholder\u2019s device or browser is valid for 15 minutes and must be used to verify the signature in the response message. CyberSource recommends creating a new key for each order. Generating a key is an authenticated request initiated from your servers, prior to requesting to tokenize the card data from your customer\u2019s device or browser.", + "post": { + "tags": [ + "Key Generation" + ], + "summary": "Generate Key", + "description": "Generate a one-time use public key and key ID to encrypt the card number in the follow-on Tokenize Card request. The key used to encrypt the card number on the cardholder\u2019s device or browser is valid for 15 minutes and must be used to verify the signature in the response message. CyberSource recommends creating a new key for each order. Generating a key is an authenticated request initiated from your servers, prior to requesting to tokenize the card data from your customer\u2019s device or browser.", + "operationId": "generatePublicKey", + "x-devcenter-metaData": { + "categoryTag": "Flex_Microform", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-flex/SAFlexibleToken.html" + }, + "x-queryParameterDefaults": { + "format": "JWT" + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "query", + "name": "format", + "type": "string", + "required": true, + "default": "JWT", + "description": "Indicator to enable the receipt of the Keys response in Flex 11+ format (JWT) or legacy (parameter not required)" + }, + { + "in": "body", + "name": "generatePublicKeyRequest", + "required": true, + "schema": { + "type": "object", + "required": [ + "encryptionType" + ], + "properties": { + "encryptionType": { + "type": "string", + "description": "How the card number should be encrypted in the subsequent Tokenize Card request. Possible values are RsaOaep256 or None (if using this value the card number must be in plain text when included in the Tokenize Card request). The Tokenize Card request uses a secure connection (TLS 1.2+) regardless of what encryption type is specified." + }, + "targetOrigin": { + "type": "string", + "description": "The merchant origin (e.g. https://example.com) used to integrate with Flex API. Required to comply with CORS and CSP standards." + } + } + } + } + ], + "x-example": { + "example0": { + "summary": "Generate Key", + "value": { + "encryptionType": "RsaOaep", + "targetOrigin": "https://www.test.com" + } + } + }, + "responses": { + "200": { + "description": "Retrieved key.", + "schema": { + "title": "flexV1KeysPost200Response", + "properties": { + "keyId": { + "type": "string", + "description": "Unique identifier for the generated token. Used in the subsequent Tokenize Card request from your customer\u2019s device or browser." + }, + "der": { + "type": "object", + "description": "The public key in DER format. Used to validate the response from the Tokenize Card request. Additionally this format is useful for client side encryption in Android and iOS implementations.", + "properties": { + "format": { + "type": "string", + "description": "Specifies the format of the public key; currently X.509." + }, + "algorithm": { + "type": "string", + "description": "Algorithm used to encrypt the public key." + }, + "publicKey": { + "type": "string", + "description": "Base64 encoded public key value." + } + } + }, + "jwk": { + "type": "object", + "description": "The public key in JSON Web Key (JWK) format. This format is useful for client side encryption in JavaScript based implementations.", + "properties": { + "kty": { + "type": "string", + "description": "Algorithm used to encrypt the public key." + }, + "use": { + "type": "string", + "description": "Defines whether to use the key for encryption (enc) or verifying a signature (sig). Always returned as enc." + }, + "kid": { + "type": "string", + "description": "The key ID in JWK format." + }, + "n": { + "type": "string", + "description": "JWK RSA Modulus" + }, + "e": { + "type": "string", + "description": "JWK RSA Exponent" + } + } + } + } + } + }, + "default": { + "description": "Error retrieving key.", + "schema": { + "type": "object", + "properties": { + "responseStatus": { + "properties": { + "status": { + "type": "number", + "description": "HTTP Status code." + }, + "reason": { + "type": "string", + "description": "Error Reason Code." + }, + "message": { + "type": "string", + "description": "Error Message." + }, + "correlationId": { + "type": "string", + "description": "API correlation ID." + }, + "details": { + "type": "array", + "items": { + "properties": { + "location": { + "type": "string", + "description": "Field name referred to for validation issues." + }, + "message": { + "type": "string", + "description": "Description or code of any error response." + } + } + } + } + } + }, + "_links": { + "type": "object", + "properties": { + "next": { + "type": "array", + "items": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." + }, + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." + } + } + } + }, + "documentation": { + "type": "array", + "items": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." + }, + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." + } + } + } + }, + "self": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." + }, + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." + } + } + } + } + } + } + } + } + }, + "x-samplePayload": { + "encryptionType": "RsaOaep256" + }, + "x-sampleResponse": { + "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", + "der": { + "format": "X.509", + "algorithm": "RSA", + "publicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAgC1G6rVue4w/jjJrKPZusGN9G+Y7mWuLJ0O2/GHd94LvR51+ok7ahuQUVMZLdigixnspaGo/WVLvTTZ5J28Cc1uSx0o/BsxpNaAQD8/aBZL3nnAiBLACxI1JHAVo7SXbJQmz+mqVFYTppg9QmpB2ATTmXjUOQy+Fqkw3EByfCANHhHSNs4+HASovsfcRMUmmvDfTd5qBb23KzDJeDVqTYWa3XjUorlZOCJuLyPgeDEK8oOC9C4W9dn32z8FJ4E6Dz28M/2O3g8FLQD2F+NezkQJsl8MEYo4rl1nr7/oIkMsYLCCoG8jwmryErb7km9JWWgqZ80trkjijFqDAbHfUEwIDAQAB" + }, + "jwk": { + "kty": "RSA", + "use": "enc", + "kid": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", + "n": "fC1G6rVue4w_jjJrKPZusGN9G-Y7mWuLJ0O2_GHd94LvR51-ok7ahuQUVMZLdigixnspaGo_WVLvTTZ5J28Cc1uSx0o_BsxpNaAQD8_aBZL3nnAiBLACxI1JHAVo7SXAJQmz-mqVFYTppg9QmpB2ATTmXjUOQy-Fqkw3EByfCANHhHSNs4-HASovsfcRMUmmvDfTd5qBb23KzDJeDVqTYWa3XjUorlZOCJuLyPgeDEK8oOC9C4W9dn32z8FJ4E6Dz28M_2O3g8FLQD2F-NezkQJsl8MEYo4rl1nr7_oIkMsYLCCoG8jwmryErb7km9JWWgqZ80trkjijFqDAbHfUEw", + "e": "AQAB" + } + } + } + }, + "/flex/v1/tokens": { + "x-name": "Tokenize Card", + "x-description": "Returns a token representing the supplied card details. The token replaces card data and can be used as the Subscription ID in the CyberSource Simple Order API or SCMP API. This is an unauthenticated call that you should initiate from your customer\u2019s device or browser.", + "post": { + "tags": [ + "tokenization" + ], + "summary": "Tokenize Card", + "description": "Returns a token representing the supplied card details. The token replaces card data and can be used as the Subscription ID in the CyberSource Simple Order API or SCMP API. This is an unauthenticated call that you should initiate from your customer\u2019s device or browser.", + "operationId": "tokenize", + "x-devcenter-metaData": { + "categoryTag": "Flex", + "noAuth": true, + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-flex/SAFlexibleToken.html" + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "tokenizeRequest", + "required": true, + "schema": { + "type": "object", + "required": [ + "keyId" + ], + "properties": { + "keyId": { + "type": "string", + "description": "Unique identifier for the generated token. This is obtained from the Generate Key request. See the [Java Script and Java examples](http://apps.cybersource.com/library/documentation/dev_guides/Secure_Acceptance_Flex/Key/html) on how to import the key and encrypt using the imported key." + }, + "cardInfo": { + "type": "object", + "required": [ + "cardNumber", + "cardType" + ], + "properties": { + "cardNumber": { + "type": "string", + "description": "Encrypted or plain text card number. If the encryption type of \u201cNone\u201d was used in the Generate Key request, this value can be set to the plaintext card number/Personal Account Number (PAN). If the encryption type of RsaOaep256 was used in the Generate Key request, this value needs to be the RSA OAEP 256 encrypted card number. The card number should be encrypted on the cardholders\u2019 device. The [WebCrypto API] (https://github.com/CyberSource/cybersource-flex-samples/blob/master/java/spring-boot/src/main/resources/public/flex.js) can be used with the JWK obtained in the Generate Key request." + }, + "cardExpirationMonth": { + "type": "string", + "description": "Two digit expiration month" + }, + "cardExpirationYear": { + "type": "string", + "description": "Four digit expiration year" + }, + "cardType": { + "type": "string", + "description": "Card Type. This field is required. Refer to the CyberSource Credit Card Services documentation for supported card types." + } + } + } + } + } + } + ], + "x-example": { + "example0": { + "summary": "Flex Tokenize Card", + "sample-name": "Tokenize Card", + "value": { + "keyId": "08z9hCmn4pRpdNhPJBEYR3Mc2DGLWq5j", + "cardInfo": { + "cardNumber": "4111111111111111", + "cardExpirationMonth": "12", + "cardExpirationYear": "2031", + "cardType": "001" + } + }, + "depends": { + "example": { + "path": "/flex/v1/keys", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "keyId", + "destinationField": "keyId", + "fieldTypeInDestination": "body" + } + ] + } + } + }, + "responses": { + "200": { + "description": "Created payment token.", + "schema": { + "title": "flexV1TokensPost200Response", + "properties": { + "keyId": { + "type": "string", + "description": "The Key ID." + }, + "token": { + "type": "string", + "description": "The generated token. The token replaces card data and is used as the Subscription ID in the CyberSource Simple Order API or SCMP API." + }, + "maskedPan": { + "type": "string", + "description": "The masked card number displaying the first 6 digits and the last 4 digits." + }, + "cardType": { + "type": "string", + "description": "The card type." + }, + "timestamp": { + "type": "integer", + "format": "int64", + "description": "The UTC date and time in milliseconds at which the signature was generated." + }, + "signedFields": { + "type": "string", + "description": "Indicates which fields from the response make up the data that is used when verifying the response signature. See the [sample code] (https://github.com/CyberSource/cybersource-flex-samples/blob/master/java/spring-boot/src/main/java/com/cybersource/flex/application/CheckoutController.java) on how to verify the signature." + }, + "signature": { + "type": "string", + "description": "Flex-generated digital signature. To ensure the values have not been tampered with while passing through the client, verify this server-side using the public key generated from the /keys resource." + }, + "discoverableServices": { + "type": "object", + "additionalProperties": { + "type": "object" + } + } + } + } + }, + "default": { + "description": "Error creating token.", + "schema": { + "type": "object", + "properties": { + "responseStatus": { + "properties": { + "status": { + "type": "number", + "description": "HTTP Status code." + }, + "reason": { + "type": "string", + "description": "Error Reason Code." + }, + "message": { + "type": "string", + "description": "Error Message." + }, + "correlationId": { + "type": "string", + "description": "API correlation ID." + }, + "details": { + "type": "array", + "items": { + "properties": { + "location": { + "type": "string", + "description": "Field name referred to for validation issues." + }, + "message": { + "type": "string", + "description": "Description or code of any error response." + } + } + } + } + } + }, + "_links": { + "type": "object", + "properties": { + "next": { + "type": "array", + "items": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." + }, + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." + } + } + } + }, + "documentation": { + "type": "array", + "items": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." + }, + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." + } + } + } + }, + "self": { + "properties": { + "href": { + "type": "string", + "description": "URI of the linked resource." + }, + "title": { + "type": "string", + "description": "Label of the linked resource." + }, + "method": { + "type": "string", + "description": "HTTP method of the linked resource." + } + } + } + } + } + } + } + } + }, + "x-samplePayload": { + "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", + "cardDetails": { + "cardNumber": "ejbhIpMEgYnIODcB4//rrVxMHrqHcnLD6pDRF36jlEk72bETAfiOoxmpI9pGiidqMmkgAnvJfVgR3CLAV5EdG4Mu5IWK26QRnVtwvsVEUtpah7IylbxV9MLvXh2FjIJskKCWNLidb1G4PN5963hnV3IoZd2pF99JwV9lPhOHT5ymlNeg7sTzQQDN1I0/yJApds+t79hl9QVp4PusUDfSsPQTtR2frzlH4V3W+XjHDhmy5oNhiUaVxv27cyG1SWeCKkVC9tc8zLy4pvlgoplrLV8JRaS9hfWalJjv2xtk3DXmNT2urtFv2evcI3LM/S29KlJjPXZcBp0IYyB/taunCA==", + "cardType": "001" + } + }, + "x-sampleResponse": { + "keyId": "05BgbFie7vX5vzSMKOoqEAAdfpdR4kas", + "token": "0100153497304242", + "maskedPan": "424242XXXXXX4242", + "cardType": "001", + "timestamp": 1472733222651, + "signedFields": "token,cardType,maskedPan,timestamp", + "signature": "TcM7METFOIidwbxWG2Xhawx/5gZ7hZB0Lyrhg3NRJ+Pma+Nq7BugvsqLCE2R24+h13xnM6vpJXR2cqfQPkxhb6joJT8jcciEf+lj6h/KjvXuR4pJ4fMll4WS1Z4+574ps0ysV/5zs7kT2IAZj7i+szlYwFJxGhOGC0218x1N0NxELTDyU/HI6n+Aa+mYBqkMXth42t+GNQ7goVXkJWRgQSjp2v0WTh2d2plDnxEWPURZXz7GLdQXRIYUWWx/L5JSf88F1zgjYDpBitNSYBMMILKfDd3KEg+6nIruCln5kDMbTRD8LwPpGYC9tyM9+UM8MBINPHhaqdFp2wHF7dccKA==", + "discoverableServices": {} + } + } + }, + "/risk/v1/decisions": { + "post": { + "summary": "Create Decision Manager", + "description": "Decision Manager can help you automate and streamline your fraud operations. Decision Manager will return a decision based on the request values.", + "operationId": "createBundledDecisionManagerCase", + "tags": [ + "Decision Manager" + ], + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "x-devcenter-metaData": { + "categoryTag": "Risk_Management", + "disableDefaultMerchantCreds": "true", + "disabledReason": "DM API response is a mock response, Please integrate with DM API to test the real-time response from the server." + }, + "parameters": [ + { + "name": "createBundledDecisionManagerCaseRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "required": [ + "orderInformation" + ], + "properties": { + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "processorInformation": { + "type": "object", + "description": "Contains information related to the payment processor.", + "properties": { + "avs": { + "type": "object", + "description": "Address Verification Service", + "properties": { + "code": { + "type": "string", + "maxLength": 3, + "description": "Value returned for address verification from the Payments Authorization response." + } + } + }, + "cardVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 1, + "description": "CVN result code.\n\nFor details, see the `auth_cv_result` reply field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + } + } + }, + "processingInformation": { + "type": "object", + "description": "Decides whether to call Payer Authentication along with DM or not", + "properties": { + "actionList": { + "type": "array", + "description": "Use CONSUMER_AUTHENTICATION to use Payer Authentication along with Decision Manager. For any other value, only Decision Manager will run.\n", + "items": { + "type": "string" + } + } + } + }, + "paymentInformation": { + "type": "object", + "description": "Contains the payment data for this transaction.", + "properties": { + "card": { + "type": "object", + "description": "Use this for a non-tokenized payment card.", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "bin": { + "type": "string", + "maxLength": 6, + "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "description": "Use this object to submit a payment network token instead of card-based values.", + "properties": { + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 1, + "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" + }, + "number": { + "type": "string", + "maxLength": 17, + "description": "Account number.\n\nWhen processing encoded account numbers, use this field for the encoded account number.\n" + }, + "encoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "checkNumber": { + "type": "string", + "maxLength": 8, + "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" + }, + "checkImageReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Image reference number associated with the check. You cannot include any special characters.\n" + } + } + }, + "routingNumber": { + "type": "string", + "maxLength": 9, + "description": "Bank routing number. This is also called the _transit number_.\n\nFor details, see `ecp_rdfi` request field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "iban": { + "type": "string", + "maxLength": 50, + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "swiftCode": { + "type": "string", + "description": "Bank\u2019s SWIFT code. You can use this field only when scoring a direct debit transaction.\nRequired only for crossborder transactions.\n\nFor all possible values, see the `bank_swiftcode` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "method": { + "type": "string", + "maxLength": 10, + "description": "Method of payment used for the order. This field can contain one of the following values:\n - `consumer` (default): Customer credit card\n - `corporate`: Corporate credit card\n - `debit`: Debit card, such as a Maestro (UK Domestic) card\n - `cod`: Collect on delivery\n - `check`: Electronic check\n - `p2p`: Person-to-person payment\n - `private1`: Private label credit card\n - `other`: Other payment method\n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains detailed order-level information.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains `currency` and `totalAmount` for this order.", + "required": [ + "currency" + ], + "properties": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "totalAmount": { + "type": "string", + "maxLength": 19, + "description": "Grand total for the order. 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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" + } + } + }, + "preOrder": { + "type": "string", + "description": "Indicates whether cardholder is placing an order with a future availability or release date.\nThis field can contain one of these values:\n- MERCHANDISE_AVAILABLE: Merchandise available\n- FUTURE_AVAILABILITY: Future availability\n" + }, + "preOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD\n" + }, + "reordered": { + "type": "boolean", + "description": "Indicates whether the cardholder is reordering previously purchased merchandise.\nThis field can contain one of these values:\n- false: First time ordered\n- true: Reordered\n" + }, + "shippingDetails": { + "type": "object", + "description": "Contains shipping information not related to address.", + "properties": { + "giftWrap": { + "type": "boolean", + "description": "Boolean that indicates whether the customer requested gift wrapping for this\npurchase. This field can contain one of the following\nvalues:\n- true: The customer requested gift wrapping.\n- false: The customer did not request gift wrapping.\n" + }, + "shippingMethod": { + "type": "string", + "maxLength": 10, + "description": "Shipping method for the product. Possible values:\n\n - `lowcost`: Lowest-cost service\n - `sameday`: Courier or same-day service\n - `oneday`: Next-day or overnight service\n - `twoday`: Two-day service\n - `threeday`: Three-day service\n - `pickup`: Store pick-up\n - `other`: Other shipping method\n - `none`: No shipping method because product is a service or subscription\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "destinationTypes": { + "type": "string", + "maxLength": 25, + "description": "Shipping destination of item. Example: Commercial, Residential, Store\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "destinationCode": { + "type": "integer", + "maxLength": 2, + "description": "Indicates destination chosen for the transaction. Possible values:\n- 01- Ship to cardholder billing address\n- 02- Ship to another verified address on file with merchant\n- 03- Ship to address that is different than billing address\n- 04- Ship to store (store address should be populated on request)\n- 05- Digital goods\n- 06- Travel and event tickets, not shipped\n- 07- Other\n" + }, + "method": { + "type": "string", + "maxLength": 10, + "description": "Shipping method for the product. Possible values:\n- lowcost: Lowest-cost service\n- sameday: Courier or same-day service\n- oneday: Next-day or overnight service\n- twoday: Two-day service\n- threeday: Three-day service\n- pickup: Store pick-up\n- other: Other shipping method\n- none: No shipping method because product is a service or subscription\nRequired for American Express SafeKey (U.S.).\n" + } + } + }, + "returnsAccepted": { + "type": "boolean", + "description": "Boolean that indicates whether returns are accepted for this order.\nThis field can contain one of the following values:\n- true: Returns are accepted for this order.\n- false: Returns are not accepted for this order.\n" + }, + "lineItems": { + "type": "array", + "description": "This array contains detailed information about individual products in the order.", + "items": { + "type": "object", + "properties": { + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "giftCardCurrency": { + "type": "integer", + "maxLength": 3, + "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "productSKU": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productRisk": { + "type": "string", + "maxLength": 6, + "description": "Indicates the level of risk for the product. This field can contain one of the following values:\n- `low`: The product is associated with few chargebacks.\n- `normal`: The product is associated with a normal number of chargebacks.\n- `high`: The product is associated with many chargebacks.\n" + }, + "productDescription": { + "type": "string", + "description": "Brief description of item." + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "gift": { + "type": "boolean", + "description": "This field is only used in DM service.\n\nDetermines whether to assign risk to the order if the billing and shipping addresses specify different cities,\nstates, or countries. This field can contain one of the following values:\n- true: Orders are assigned only slight additional risk if billing and shipping addresses are different.\n- false: Orders are assigned higher additional risk if billing and shipping addresses are different.\n" + }, + "distributorProductSku": { + "type": "string", + "maxLength": 15, + "description": "Product\u2019s identifier code. This field is inserted into the outgoing message without being parsed or formatted.\nThis field is included as Distributor product SKU (Offer) in the list of API fields with which you can create\ncustom rules.\n" + }, + "passenger": { + "type": "object", + "description": "Contains travel-related passenger details used by DM service only.", + "properties": { + "type": { + "type": "string", + "maxLength": 32, + "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" + }, + "status": { + "type": "string", + "maxLength": 32, + "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" + }, + "phone": { + "type": "string", + "maxLength": 15, + "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's first name." + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's last name." + }, + "id": { + "type": "string", + "maxLength": 40, + "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." + }, + "nationality": { + "type": "string", + "maxLength": 2, + "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." + } + } + }, + "shippingDestinationTypes": { + "type": "string", + "maxLength": 50, + "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + } + } + }, + "totalOffersCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of articles/items in the order as a numeric decimal count.\nPossible values: 00 - 99\n" + } + } + }, + "buyerInformation": { + "type": "object", + "description": "Contains information about the buyer.", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "username": { + "type": "string", + "maxLength": 255, + "description": "Specifies the customer account user name." + }, + "hashedPassword": { + "type": "string", + "maxLength": 100, + "description": "The merchant's password that CyberSource hashes and stores as a hashed password.\n\nFor details about this field, see the `customer_password` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "dateOfBirth": { + "type": "string", + "maxLength": 8, + "description": "Recipient\u2019s date of birth. **Format**: `YYYYMMDD`.\n\nThis field is a `pass-through`, which means that CyberSource ensures that the value is eight numeric characters\nbut otherwise does not verify the value or modify it in any way before sending it to the processor. If the field\nis not required for the transaction, CyberSource does not forward it to the processor.\n\nFor more details, see `recipient_date_of_birth` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" + }, + "issuedBy": { + "type": "string", + "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "verificationResults": { + "type": "string", + "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" + } + } + } + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "cookiesAccepted": { + "type": "string", + "description": "Whether the customer\u2019s browser accepts cookies. This field can contain one of the following values:\n- `yes`: The customer\u2019s browser accepts cookies.\n- `no`: The customer\u2019s browser does not accept cookies.\n" + }, + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "fingerprintSessionId": { + "type": "string", + "description": "Field that contains the session ID that you send to Decision Manager to obtain the device fingerprint\ninformation. The string can contain uppercase and lowercase letters, digits, hyphen (-), and\nunderscore (_). However, do not use the same uppercase and lowercase letters to indicate\ndifferent session IDs.\n\nThe session ID must be unique for each merchant ID. You can use any string that you are already\ngenerating, such as an order number or web session ID.\n\nThe session ID must be unique for each page load, regardless of an individual\u2019s web session ID.\nIf a user navigates to a profiled page and is assigned a web session, navigates away from the\nprofiled page, then navigates back to the profiled page, the generated session ID should be different\nand unique. You may use a web session ID, but it is preferable to use an application GUID (Globally\nUnique Identifier). This measure ensures that a unique ID is generated every time the page is\nloaded, even if it is the same user reloading the page.\n" + }, + "httpBrowserEmail": { + "type": "string", + "description": "Email address set in the customer\u2019s browser, which may differ from customer email.\n" + }, + "userAgent": { + "type": "string", + "maxLength": 40, + "description": "Customer\u2019s browser as identified from the HTTP header data. For example, `Mozilla` is the value that identifies\nthe Netscape browser.\n" + }, + "rawData": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "description": "Field that contains the device fingerprint data from the specified provider. The value should be Base64 encoded.\n" + }, + "provider": { + "type": "string", + "maxLength": 32, + "description": "Possible values:\n- cardinal\n- inauth\n- threatmetrix\n" + } + } + } + }, + "httpAcceptBrowserValue": { + "type": "string", + "maxLength": 255, + "description": "Value of the Accept header sent by the customer\u2019s web browser.\n**Note** If the customer\u2019s browser provides a value, you must include it in your request.\n" + }, + "httpAcceptContent": { + "type": "string", + "maxLength": 256, + "description": "The exact content of the HTTP accept header.\n" + }, + "httpBrowserLanguage": { + "type": "string", + "maxLength": 8, + "description": "Value represents the browser language as defined in IETF BCP47.\nExample:en-US, refer https://en.wikipedia.org/wiki/IETF_language_tag for more details.\n" + }, + "httpBrowserJavaEnabled": { + "type": "boolean", + "description": "A Boolean value that represents the ability of the cardholder browser to execute Java.\nValue is returned from the navigator.javaEnabled property. Possible Values:True/False\n" + }, + "httpBrowserJavaScriptEnabled": { + "type": "boolean", + "description": "A Boolean value that represents the ability of the cardholder browser to execute JavaScript. Possible Values:True/False.\n**Note**: Merchants should be able to know the values from fingerprint details of cardholder's browser.\n" + }, + "httpBrowserColorDepth": { + "type": "string", + "maxLength": 2, + "description": "Value represents the bit depth of the color palette for displaying images, in bits per pixel.\nExample : 24, refer https://en.wikipedia.org/wiki/Color_depth for more details\n" + }, + "httpBrowserScreenHeight": { + "type": "string", + "maxLength": 6, + "description": "Total height of the Cardholder's scree in pixels, example: 864.\n" + }, + "httpBrowserScreenWidth": { + "type": "string", + "maxLength": 6, + "description": "Total width of the cardholder's screen in pixels. Example: 1536.\n" + }, + "httpBrowserTimeDifference": { + "type": "string", + "maxLength": 5, + "description": "Time difference between UTC time and the cardholder browser local time, in minutes, Example:300\n" + }, + "userAgentBrowserValue": { + "type": "string", + "maxLength": 255, + "description": "Value of the User-Agent header sent by the customer\u2019s web browser.\nNote If the customer\u2019s browser provides a value, you must include it in your request.\n" + } + } + }, + "riskInformation": { + "type": "object", + "properties": { + "profile": { + "type": "object", + "description": "Identifies a risk profile.", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" + } + } + }, + "eventType": { + "type": "string", + "maxLength": 255, + "description": "Specifies one of the following types of events:\n- login\n- account_creation\n- account_update\nFor regular payment transactions, do not send this field.\n" + }, + "buyerHistory": { + "type": "object", + "properties": { + "customerAccount": { + "type": "object", + "properties": { + "lastChangeDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder\u2019s account was last changed.\nThis includes changes to the billing or shipping address, new payment accounts or new users added.\nRecommended for Discover ProtectBuy.\n" + }, + "creationHistory": { + "type": "string", + "description": "The values from the enum can be:\n- GUEST\n- NEW_ACCOUNT\n- EXISTING_ACCOUNT\n" + }, + "modificationHistory": { + "type": "string", + "description": "This field is applicable only in case of EXISTING_ACCOUNT in creationHistory. Possible values:\n- ACCOUNT_UPDATED_NOW\n- ACCOUNT_UPDATED_PAST\n" + }, + "passwordHistory": { + "type": "string", + "description": "This only applies for EXISTING_ACCOUNT in creationHistory.\nThe values from the enum can be:\n- PASSWORD_CHANGED_NOW\n- PASSWORD_CHANGED_PAST\n- PASSWORD_NEVER_CHANGED\n" + }, + "createDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder opened the account.\nRecommended for Discover ProtectBuy.\nThis only applies for EXISTING_ACCOUNT in creationHistory.\n" + }, + "passwordChangeDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder last changed or reset password on account.\nRecommended for Discover ProtectBuy.\nThis only applies for PASSWORD_CHANGED_PAST in passwordHistory.\n" + } + } + }, + "accountHistory": { + "type": "object", + "properties": { + "firstUseOfShippingAddress": { + "type": "boolean", + "description": "Applicable when this is not a guest account.\n" + }, + "shippingAddressUsageDate": { + "type": "string", + "maxLength": 10, + "description": "Date when the shipping address for this transaction was first used.\nRecommended for Discover ProtectBuy.\nIf `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.\n" + } + } + }, + "accountPurchases": { + "type": "integer", + "maxLength": 4, + "description": "Number of purchases with this cardholder account during the previous six months.\nRecommended for Discover ProtectBuy.\n" + }, + "addCardAttempts": { + "type": "integer", + "maxLength": 3, + "description": "Number of add card attempts in the last 24 hours.\nRecommended for Discover ProtectBuy.\n" + }, + "priorSuspiciousActivity": { + "type": "boolean", + "description": "Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.\nRecommended for Discover ProtectBuy.\n" + }, + "paymentAccountHistory": { + "type": "string", + "description": "This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are:\n- PAYMENT_ACCOUNT_EXISTS\n- PAYMENT_ACCOUNT_ADDED_NOW\n" + }, + "paymentAccountDate": { + "type": "integer", + "maxLength": 8, + "description": "Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory\n" + }, + "transactionCountDay": { + "type": "integer", + "maxLength": 3, + "description": "Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours.\nRecommended for Discover ProtectBuy.\n" + }, + "transactionCountYear": { + "type": "integer", + "maxLength": 3, + "description": "Number of transaction (successful or abandoned) for this cardholder account within the last year.\nRecommended for Discover ProtectBuy.\n" + } + } + }, + "auxiliaryData": { + "type": "array", + "items": { + "type": "object", + "description": "Contains auxiliary key-value pairs.", + "properties": { + "key": { + "type": "string", + "maxLength": 255, + "description": "Fields that you can use to send additional data to Risk services.\n**Warning** Auxiliary fields are not intended to and MUST NOT\nbe used to capture personally identifying information.\nAccordingly, merchants are prohibited from capturing,\nobtaining, and/or transmitting any personally identifying\ninformation in or via the auxiliary data fields. Personally\nidentifying information includes, but is not limited to,\naddress, credit card number, social security number,\ndriver's license number, state-issued identification\nnumber, passport number, and card verification numbers\n(CVV, CVC2, CVV2, CID, CVN). In the event CyberSource\ndiscovers that a merchant is capturing and/or transmitting\npersonally identifying information via the auxiliary data\nfields, whether or not intentionally, CyberSource WILL\nimmediately suspend the merchant's account, which will\nresult in a rejection of any and all transaction requests\nsubmitted by the merchant after the point of suspension.\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "String value for the key" + } + } + } + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "actualFinalDestination": { + "type": "string", + "maxLength": 3, + "description": "IATA Code for the actual final destination that the customer intends to travel to.\nIt should be a destination on the completeRoute.\n" + }, + "completeRoute": { + "type": "string", + "maxLength": 255, + "description": "Concatenation of individual travel legs in the format ORIG1-DEST1[:ORIG2-DEST2...:ORIGn-DESTn], for\nexample, SFO-JFK:JFK-LHR:LHR-CDG. For airport codes, see the IATA Airline and Airport Code Search.\nNote In your request, send either the complete route or the individual legs (_leg#_orig and _leg#_dest). If you\nsend all the fields, the value of _complete_route takes precedence over that of the _leg# fields.\n" + }, + "departureTime": { + "type": "string", + "maxLength": 25, + "description": "Departure date and time of the first leg of the trip. Use one of the following formats:\n - yyyy-MM-dd HH:mm z\n - yyyy-MM-dd hh:mm a z\n - yyyy-MM-dd hh:mma z\n HH = hour in 24-hour format\n hh = hour in 12-hour format\n a = am or pm (case insensitive)\n z = time zone of the departing flight, for example: If the\n airline is based in city A, but the flight departs from city\n B, z is the time zone of city B at the time of departure.\nImportant For travel information, use GMT instead of UTC, or use the local time zone.\nExamples\n2011-03-20 11:30 PM PDT\n2011-03-20 11:30pm GMT\n2011-03-20 11:30pm GMT-05:00\nEastern Standard Time: GMT-05:00 or EST\nNote When specifying an offset from GMT, the format must be exactly as specified in the example. Insert no\nspaces between the time zone and the offset.\n" + }, + "journeyType": { + "type": "string", + "maxLength": 32, + "description": "Type of travel, for example one way or round trip." + }, + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "origination": { + "type": "string", + "maxLength": 3, + "description": "Use to specify the airport code for the origin of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco.\nDo not use the colon (:) or the dash (-). For airport codes, see the IATA Airline and Airport Code Search.\nThe leg number can be a positive integer from 0 to N.\nFor example:\n`travelInformation.legs.0.origination=SFO`\n`travelInformation.legs.1.origination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_orig` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "destination": { + "type": "string", + "maxLength": 3, + "description": "Use to specify the airport code for the destination of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco. Do not use the\ncolon (:) or the dash (-). For airport codes, see [IATA Airline and Airport Code Search](https://www.iata.org/publications/Pages/code-search.aspx). The leg number can be a\npositive integer from 0 to N.\nFor example:\n\n`travelInformation.legs.0.destination=SFO`\n`travelInformation.legs.1.destination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_dest` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "carrierCode": { + "type": "string", + "maxLength": 2, + "description": "International Air Transport Association (IATA) code for the carrier for this leg of the trip.\nRequired for each leg.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + }, + "departureDate": { + "type": "string", + "description": "Departure date for the first leg of the trip. Format: YYYYMMDD.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + } + } + } + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nIf you do not include this field in your request, CyberSource uses a default value of 1.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + }, + "passengers": { + "type": "array", + "items": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + } + } + } + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "items": { + "type": "object", + "description": "Contains merchant-defined key-value pairs.", + "properties": { + "key": { + "type": "string", + "maxLength": 255, + "description": "Fields that you can use to store information. The value\nappears in the Case Management Details window in the\nBusiness Center. The first four fields are the same fields\nthat are used by the Secure Data services. See request\ncode examples.\n**Warning** Merchant-defined data fields are not intended\nto and must not be used to capture personally identifying\ninformation. Accordingly, merchants are prohibited from\ncapturing, obtaining, and/or transmitting any personally\nidentifying information in or via the merchant-defined data\nfields. Personally identifying information includes, but is\nnot limited to, address, credit card number, social security\nnumber, driver's license number, state-issued\nidentification number, passport number, and card\nverification numbers (CVV, CVC2, CVV2, CID, CVN). In\nthe event CyberSource discovers that a merchant is\ncapturing and/or transmitting personally identifying\ninformation via the merchant-defined data fields, whether\nor not intentionally, CyberSource will immediately\nsuspend the merchant's account, which will result in a\nrejection of any and all transaction requests submitted by\nthe merchant after the point of suspension.\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "String value for the key" + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + } + } + }, + "merchantName": { + "type": "string", + "maxLength": 25, + "description": "Your company\u2019s name as you want it to appear to the customer in the issuing bank\u2019s authentication form.\nThis value overrides the value specified by your merchant bank.\n" + } + } + }, + "acquirerInformation": { + "type": "object", + "properties": { + "acquirerBin": { + "type": "string", + "maxLength": 11, + "description": "Acquirer bank ID number that corresponds to a certificate that Cybersource already has.This ID has this format. 4XXXXX for Visa and 5XXXXX for Mastercard.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Issuers need to be aware of the Acquirer's Country Code when the Acquirer country differs from the Merchant country and the Acquirer is in the EEA (European Economic Area).\n" + }, + "password": { + "type": "string", + "maxLength": 8, + "description": "Registered password for the Visa directory server.\n" + }, + "merchantId": { + "type": "string", + "maxLength": 15, + "description": "Username for the visa directory server that is created when your acquirer sets up your account. This ID might be the same as your merchant ID. the username can be 15 or 23 characters.\n" + } + } + }, + "recurringPaymentInformation": { + "type": "object", + "description": "This object contains recurring payment information.", + "properties": { + "endDate": { + "type": "string", + "maxLength": 10, + "description": "The date after which no further recurring authorizations should be performed. Format: `YYYY-MM-DD`\n**Note** This field is required for recurring transactions.\n" + }, + "frequency": { + "type": "integer", + "maxLength": 4, + "description": "Integer value indicating the minimum number of days between recurring authorizations. A frequency\nof monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months.\n\nExample: 6 months = 168\n\nExample values accepted (31 days):\n- 31\n- 031\n- 0031\n\n**Note** This field is required for recurring transactions.\n" + }, + "numberOfPayments": { + "type": "integer", + "maxLength": 3, + "description": "Total number of payments for the duration of the recurring subscription.\n" + }, + "originalPurchaseDate": { + "type": "string", + "maxLength": 17, + "description": "Date of original purchase. Required for recurring transactions.\nFormat: `YYYY-MM-DDTHH:MM:SSZ`\n**Note**: If this field is empty, the current date is used.\n" + }, + "sequenceNumber": { + "type": "integer", + "maxLength": 3, + "description": "This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC. \nThis field records recurring sequence, e.g. 1st for initial, 2 for subsequent, 3 etc\n" + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "strongAuthentication": { + "type": "object", + "properties": { + "authenticationIndicator": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of Authentication request\n\n01 - Payment transaction\n\n02 - Recurring transaction\n\n03 - Installment transaction\n\n04 - Add card\n\n05 - Maintain card\n\n06 - Cardholder verification as part of EMV token ID and V\n" + } + } + }, + "authenticationType": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" + }, + "acsWindowSize": { + "type": "string", + "maxLength": 2, + "description": "An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.\n\n01 - 250x400\n\n02 - 390x400\n\n03 - 500x600\n\n04 - 600x400\n\n05 - Full page\n" + }, + "alternateAuthenticationData": { + "type": "string", + "maxLength": 2048, + "description": "Data that documents and supports a specific authentication process.\n" + }, + "alternateAuthenticationDate": { + "type": "string", + "maxLength": 14, + "description": "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM\n" + }, + "alternateAuthenticationMethod": { + "type": "string", + "description": "Mechanism used by the cardholder to authenticate to the 3D Secure requestor.\nPossible values:\n- `01`: No authentication occurred\n- `02`: Login using merchant system credentials\n- `03`: Login using Federated ID\n- `04`: Login using issuer credentials\n- `05`: Login using third-party authenticator\n- `06`: Login using FIDO Authenticator\n" + }, + "authenticationDate": { + "type": "string", + "maxLength": 14, + "description": "The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request\npayload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be\nprovided by merchant in authorization request if calling an external 3DS provider.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\nFormat: YYYYMMDDHHMMSS\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" + }, + "transactionFlowIndicator": { + "type": "integer", + "maxLength": 2, + "description": "This field is only applicable to Rupay and is optional. Merchant will have to pass a valid value from 01 through 07 which indicates the transaction flow. Below are the possible values.\n01:NW \u2013 Transaction performed at domestic merchant.\n02:TW - Transaction performed at domestic merchant along with Token provisioning.\n03:IT \u2013 Transaction performed at International merchant.\n04:AT- Authentication Transaction Only.\n05:AW- Authentication transaction for provisioning.\n06:DI- Domestic InApp Transaction.\n07:II- International InApp transaction.\n" + }, + "challengeCancelCode": { + "type": "string", + "maxLength": 2, + "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" + }, + "challengeCode": { + "type": "string", + "description": "Possible values:\n- `01`: No preference\n- `02`: No challenge request\n- `03`: Challenge requested (3D Secure requestor preference)\n- `04`: Challenge requested (mandate)\n- `05`: No challenge requested (transactional risk analysis is already performed)\n- `06`: No challenge requested (Data share only)\n- `07`: No challenge requested (strong consumer authentication is already performed)\n- `08`: No challenge requested (utilize whitelist exemption if no challenge required)\n- `09`: Challenge requested (whitelist prompt requested if challenge required)\n**Note** This field will default to `01` on merchant configuration and can be overridden by the merchant.\nEMV 3D Secure version 2.1.0 supports values `01-04`. Version 2.2.0 supports values `01-09`.\n\nFor details, see `pa_challenge_code` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html)\n" + }, + "challengeStatus": { + "type": "string", + "maxLength": 2, + "description": "The `consumerAuthenticationInformation.challengeCode` indicates the authentication type/level, or challenge, that was presented to the cardholder\nat checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to\nthe issuer the alternative authentication methods that the consumer used.\n" + }, + "customerCardAlias": { + "type": "string", + "maxLength": 128, + "description": "An alias that uniquely identifies the customer's account and credit card on file.\nNote This field is required if Tokenization is enabled in the merchant profile settings.\n" + }, + "decoupledAuthenticationIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" + }, + "decoupledAuthenticationMaxTime": { + "type": "string", + "maxLength": 5, + "description": "Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes).\nPossible Values: Numeric values between 1 and 10080 accepted.\n" + }, + "defaultCard": { + "type": "boolean", + "description": "Indicates that the card being used is the one designated as the primary payment card for purchase.\nRecommended for Discover ProtectBuy.\n" + }, + "deviceChannel": { + "type": "string", + "maxLength": 10, + "description": "Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.\n" + }, + "installmentTotalCount": { + "type": "integer", + "maxLength": 4, + "description": "An integer value greater than 1 indicating the max number of permitted authorizations for installment payments.\n**Note** This is required if the merchant and cardholder have agreed to installment payments.\n" + }, + "merchantFraudRate": { + "type": "string", + "maxLength": 2, + "description": "Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes).\nPossible Values:\n1 = Represents fraud rate <=1\n\n2 = Represents fraud rate >1 and <=6\n\n3 = Represents fraud rate >6 and <=13\n\n4 = Represents fraud rate >13 and <=25\n\n5 = Represents fraud rate >25\n\nEEA** = European Economic Area\nRTS** = Regulatory Technical Standards\nPSD2** = Payment Services Directive\n" + }, + "marketingOptIn": { + "type": "boolean", + "description": "Indicates whether the customer has opted in for marketing offers.\nRecommended for Discover ProtectBuy.\n" + }, + "marketingSource": { + "type": "string", + "maxLength": 40, + "description": "Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.\n" + }, + "mcc": { + "type": "string", + "maxLength": 4, + "description": "Merchant category code.\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "merchantScore": { + "type": "integer", + "maxLength": 2, + "description": "Risk Score provided by merchants. This is specific for CB transactions.\n" + }, + "messageCategory": { + "type": "string", + "description": "Category of the message for a specific use case. Possible values:\n\n- `01`: PA- payment authentication\n- `02`: NPA- non-payment authentication\n- `03-79`: Reserved for EMVCo future use (values invalid until defined by EMVCo)\n- `80-99`: Reserved for DS use\n" + }, + "npaCode": { + "type": "string", + "maxLength": 2, + "description": "Non-Payer Authentication Indicator.\nPossible values:\n- `01`: Add card\n- `02`: Maintain card information\n- `03`: Cardholder verification for EMV token\n- `04-80` Reserved for EMVCo\n- `80-90` Reserved DS\n" + }, + "overridePaymentMethod": { + "type": "string", + "description": "Specifies the Brazilian payment account type used for the transaction.\nThis field overrides other payment types that might be specified in the request.\nUse one of the following values for this field:\n- `NA`: Not applicable. Do not override other payment types that are specified in the request.\n- `CR`: Credit card.\n- `DB`: Debit card.\n- `VSAVR`: Visa Vale Refeicao\n- `VSAVA`: Visa Vale Alimentacao\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "overrideCountryCode": { + "type": "string", + "maxLength": 2, + "description": "Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)..\n" + }, + "priorAuthenticationData": { + "type": "string", + "maxLength": 2048, + "description": "This field carry data that the ACS can use to verify the authentication process.\n" + }, + "priorAuthenticationMethod": { + "type": "string", + "maxLength": 2, + "description": "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n\n01 - Frictionless authentication occurred by ACS\n\n02 - Cardholder challenge occurred by ACS\n\n03 - AVS verified\n\n04 - Other issuer methods\n\n05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo)\n\n80-99 - Reserved for DS use\n" + }, + "priorAuthenticationReferenceId": { + "type": "string", + "maxLength": 36, + "description": "This data element contains a ACS Transaction ID for a prior authenticated transaction.\nFor example, the first recurring transaction that was authenticated with the cardholder\n" + }, + "priorAuthenticationTime": { + "type": "string", + "maxLength": 12, + "description": "Date and time in UTC of the prior cardholder authentication. Format \u2013 YYYYMMDDHHMM\n" + }, + "productCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the product code, which designates the type of transaction.\nSpecify one of the following values for this field:\n- AIR: Airline purchase\nImportant Required for American Express SafeKey (U.S.).\n- `ACC`: Accommodation Rental\n- `ACF`: Account funding\n- `CHA`: Check acceptance\n- `DIG`: Digital Goods\n- `DSP`: Cash Dispensing\n- `GAS`: Fuel\n- `GEN`: General Retail\n- `LUX`: Luxury Retail\n- `PAL`: Prepaid activation and load\n- `PHY`: Goods or services purchase\n- `QCT`: Quasi-cash transaction\n- `REN`: Car Rental\n- `RES`: Restaurant\n- `SVC`: Services\n- `TBD`: Other\n- `TRA`: Travel\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "returnUrl": { + "type": "string", + "maxLength": 2048, + "description": "The URL of the merchant\u2019s return page. CyberSource adds this return URL to the step-up JWT and returns it in the\nresponse of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL.\nOnce the bank session completes, the merchant receives a POST to their URL. This response contains the completed\nbank session\u2019s transactionId. The merchant\u2019s return page should capture the transaction ID and send it in the\nPayer Authentication validation call.\n" + }, + "requestorId": { + "type": "string", + "maxLength": 35, + "description": "Cardinal's directory server assigned 3DS Requestor ID value" + }, + "requestorInitiatedAuthenticationIndicator": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of 3RI request.\n\nPossible Values:\n\n01 - Recurring transaction\n\n02 - Installment transaction\n\n03 - Add card\n\n04 - Maintain card\n\n05 - Account verification\n\n06 - Split/delayed shipment\n\n07 - Top-up\n\n08 - Mail Order\n\n09 - Telephone Order\n\n10 - Whitelist status check\n\n11 - Other payment\n" + }, + "requestorName": { + "type": "string", + "maxLength": 40, + "description": "Cardinal's directory server assigned 3DS Requestor Name value" + }, + "referenceId": { + "type": "string", + "maxLength": 50, + "description": "Reference ID that corresponds to the device fingerprinting data that was collected previously.\nNote Required for Hybrid integration.\n" + }, + "sdkMaxTimeout": { + "type": "string", + "maxLength": 2, + "description": "This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes).\n\nPossible Values:\n\nGreater than or equal to 05 (05 is the minimum timeout to set)\n\nCardinal Default is set to 15\n\nNOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed\n" + }, + "secureCorporatePaymentIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies.\nPossible Values : 0/1\n" + }, + "transactionMode": { + "type": "string", + "description": "Transaction mode identifier. Identifies the channel from which the transaction originates.\nPossible values:\n\n- `M`: MOTO (Mail Order Telephone Order)\n- `R`: Retail\n- `S`: eCommerce\n- `P`: Mobile Device\n- `T`: Tablet\n" + }, + "whiteListStatus": { + "type": "string", + "maxLength": 1, + "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1DecisionsPost201Response", + "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." + } + } + }, + "reversal": { + "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." + } + } + }, + "capture": { + "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." + } + } + }, + "customer": { + "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." + } + } + }, + "paymentInstrument": { + "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." + } + } + }, + "shippingAddress": { + "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." + } + } + }, + "instrumentIdentifier": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "submitTimeLocal": { + "type": "string", + "description": "Time that the transaction was submitted in local time. Generated by Cybersource." + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - `ACCEPTED`\n - `REJECTED`\n - `PENDING_REVIEW`\n - `DECLINED`\n - `PENDING_AUTHENTICATION`\n - `INVALID_REQUEST`\n - `AUTHENTICATION_FAILED`\n - `CHALLENGE`\n" + }, + "riskInformation": { + "type": "object", + "description": "Contains the result of risk assessment.", + "properties": { + "profile": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the active profile chosen by the profile selector. If no profile selector exists,\nthe default active profile is chosen.\n\n**Note** By default, your default profile is the active profile, or the Profile Selector chooses the active profile. Use this field\nonly if you want to specify the name of a different profile. The passed-in profile will then become the active profile.\n" + }, + "desinationQueue": { + "type": "string", + "maxLength": 255, + "description": "Name of the queue where orders that are not automatically accepted are sent.\n" + }, + "selectorRule": { + "type": "string", + "maxLength": 255, + "description": "Name of the profile selector rule that chooses the profile to use for the\ntransaction. If no profile selector exists, the value is Default Active Profile.\n" + } + } + }, + "rules": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 255, + "description": "Description of the rule as it appears in the Profile Editor." + }, + "decision": { + "type": "string", + "maxLength": 255, + "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" + } + } + } + }, + "infoCodes": { + "type": "object", + "properties": { + "velocity": { + "type": "array", + "description": "List of information codes triggered by the order. These information codes were generated when you created\nthe order and product velocity rules and are returned so that you can associate them with the rules.\n", + "items": { + "type": "string", + "description": "Indicates excessive volume of transactions." + } + }, + "address": { + "type": "array", + "description": "Indicates a mismatch between the customer\u2019s billing and shipping addresses.\n", + "items": { + "type": "string" + } + }, + "customerList": { + "type": "array", + "description": "Indicates that customer information is associated with transactions that are either on the negative or\nthe positive list.\n", + "items": { + "type": "string" + } + }, + "deviceBehavior": { + "type": "array", + "description": "Indicates the device behavior information code(s) returned from device fingerprinting.\n", + "items": { + "type": "string" + } + }, + "identityChange": { + "type": "array", + "description": "Indicates excessive identity changes. The threshold is variable depending on the identity elements being\ncompared.\n", + "items": { + "type": "string" + } + }, + "internet": { + "type": "array", + "description": "Indicates a problem with the customer\u2019s email address, IP address, or billing address.\n", + "items": { + "type": "string" + } + }, + "phone": { + "type": "array", + "description": "Indicates a problem with the customer\u2019s phone number.\n", + "items": { + "type": "string" + } + }, + "suspicious": { + "type": "array", + "description": "Indicates that the customer provided potentially suspicious information.\n", + "items": { + "type": "string" + } + }, + "globalVelocity": { + "type": "array", + "description": "Indicates that the customer has a high purchase frequency.\n", + "items": { + "type": "string" + } + } + } + }, + "velocity": { + "type": "object", + "properties": { + "morphing": { + "type": "array", + "description": "List of information codes triggered by the order. These information codes were generated when you created the order and product velocity rules and are returned so that you can associate them with the rules.\n\nReturned by scoring service.\n", + "items": { + "type": "object", + "properties": { + "count": { + "type": "integer", + "maxLength": 5, + "description": "Morphing count specified by the number #.\n\n**Note** The count is not returned for the initial transaction.\n" + }, + "fieldName": { + "type": "string", + "maxLength": 255, + "description": "Field name of the morphing element. specified by the setting that you chose in the\nVelocity Editor.\n\nFor all possible values, see the `decisionReply_morphingElement_#_fieldName` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "informationCode": { + "type": "string", + "maxLength": 255, + "description": "Identifier that CyberSource assigned to the velocity rule specified by the number #.\n\nFor all possible values, see the `decision_velocity_morphing_#_info_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > \n" + } + } + } + }, + "address": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255, + "description": "Indicates a mismatch between the customer's billing and shipping addresses.\n\nFor all possible values, see the `score_address_info` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + } + }, + "casePriority": { + "type": "integer", + "maxLength": 1, + "description": "You receive this field only if you subscribe to the Enhanced Case Management service. The priority level ranges from 1 (highest) to 5 (lowest); the default value is 3. If you do not assign a priority to your rules or to your profiles, the default value is given to the order.\n\nFor all possible values, see the `decision_case_priority` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "localTime": { + "type": "string", + "maxLength": 255, + "description": "The customer's local time (`hh:mm:ss`), which is calculated from the transaction request time and the\ncustomer's billing address.\n\nFor details, see the `score_time_local` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/)\n" + }, + "score": { + "type": "object", + "properties": { + "factorCodes": { + "type": "array", + "items": { + "type": "string", + "description": "This field contains information that affected the score of the order.\nThis field will contain one or more codes, separated by carets (^).\n\nFor all possible values, see the `score_factors` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + }, + "modelUsed": { + "type": "string", + "maxLength": 255, + "description": "Name of the score model used for the transaction. If you did not include a custom model in your request,\nthis field contains the name of CyberSource\u2019s default model.\n\nFor all possible values, see the `score_model_used` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "result": { + "type": "string", + "maxLength": 255, + "description": "Total score calculated for this order. The value cannot be negative.\n\nFor all possible values, see the `score_score_result` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "ipAddress": { + "type": "object", + "description": "Contains detailed response information about the customer's IP address.", + "properties": { + "anonymizerStatus": { + "type": "string", + "maxLength": 255, + "description": "Indicates whether the transaction IP address is associated with a known anonymous proxy.\n\nFor all possible values, see the `score_ip_anonymizer_status` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "locality": { + "type": "string", + "maxLength": 255, + "description": "Name of the city decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_city` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "country": { + "type": "string", + "maxLength": 255, + "description": "Name of the country decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 255, + "description": "Name of the state decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_state` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "routingMethod": { + "type": "string", + "maxLength": 255, + "description": "Routing method decoded from the IP address used directly or indirectly by the customer to send the order.\n\nFor all possible values, see the `score_ip_routing_method` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "carrier": { + "type": "string", + "maxLength": 255, + "description": "Provides the name of the organization that owns the ASN. The carrier is responsible for the traffic carried on the network or set of networks designated as an Autonomous System (AS) and identified by the ASN.\nWhile there are more than 27,000 active ASNs, there are fewer carriers, because a single carrier often manages several ASNs.\n" + }, + "organization": { + "type": "string", + "maxLength": 255, + "description": "The Registering Organization is the entity responsible for the actions and content associated with a given block of IP addresses. This is in contrast to the carrier, which is responsible for the routing of traffic for network blocks. Registering Organizations include many types of entities, including corporate, government, or educational entities, and ISPs managing the allocation and use of network blocks.\n" + } + } + }, + "providers": { + "type": "object", + "properties": { + "providerName": { + "type": "array", + "items": { + "type": "object", + "description": "Name of the 3rd party provider, for example, Emailage.\n\nFor all possible values, see the `decision_provider_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n", + "properties": { + "fieldName": { + "type": "array", + "items": { + "type": "string", + "description": "Field name, for example, email address domain name (domain_name).\n\nFor all possible values, see the `decision_provider_#_field_#_name` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + }, + "fieldValue": { + "type": "array", + "items": { + "type": "string", + "description": "Value for the field, for example, yahoo.com." + } + } + } + } + } + } + }, + "travel": { + "type": "object", + "properties": { + "actualFinalDestination": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of actual final destination on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of actual final destination on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of actual final destination on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of actual final destination on the route." + } + } + }, + "firstDeparture": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of first departure on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of first departure on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of first departure on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of first departure on the route." + } + } + }, + "firstDestination": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of first destination on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of first destination on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of first destination on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of first destination on the route." + } + } + }, + "lastDestination": { + "type": "object", + "properties": { + "country": { + "type": "string", + "maxLength": 90, + "description": "Country of last destination on the route." + }, + "locality": { + "type": "string", + "maxLength": 90, + "description": "City of last destination on the route." + }, + "latitude": { + "type": "string", + "maxLength": 10, + "description": "Latitude of last destination on the route." + }, + "longitude": { + "type": "string", + "maxLength": 10, + "description": "Longitude of last destination on the route." + } + } + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "description": "Contains response information about the payment.", + "properties": { + "binCountry": { + "type": "string", + "maxLength": 255, + "description": "Country (two-digit country code) associated with the BIN of the customer\u2019s card used for the payment.\nReturned if the information is available. Use this field for additional information when reviewing orders.\nThis information is also displayed in the details page of the CyberSource Business Center.\n\nFor all possible values, see the `bin_country` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "accountType": { + "type": "string", + "maxLength": 255, + "description": "Type of payment card account. This field can refer to a credit card, debit card, or prepaid card\naccount type.\n\nFor all possible values, see the `score_card_account_type` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "issuer": { + "type": "string", + "maxLength": 255, + "description": "Name of the bank or entity that issued the card account.\n\nFor all possible values, see the `score_card_issuer` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "scheme": { + "type": "string", + "maxLength": 255, + "description": "Subtype of card account. This field can contain one of the following values:\n- Maestro International\n- Maestro UK Domestic\n- MasterCard Credit\n- MasterCard Debit\n- Visa Credit\n- Visa Debit\n- Visa Electron\n\n**Note** Additional values may be present.\n\nFor all possible values, see the `score_card_scheme` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "bin": { + "type": "string", + "maxLength": 255, + "description": "Credit card BIN (the first six digits of the credit card).Derived either from the `cc_bin` request field\nor from the first six characters of the `customer_cc_num` field.\n\nFor all possible values, see the `score_cc_bin` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "accessToken": { + "type": "string", + "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" + }, + "acsRenderingType": { + "type": "string", + "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" + }, + "acsTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" + }, + "acsUrl": { + "type": "string", + "maxLength": 2048, + "description": "URL for the card-issuing bank\u2019s authentication form that you receive when the card is enrolled.\nThe value can be very large.\n" + }, + "authenticationPath": { + "type": "string", + "description": "Indicates what displays to the customer during the authentication process.\nThis field can contain one of these values:\n- `ADS`: (Card not enrolled) customer prompted to activate the card during the checkout process.\n- `ATTEMPTS`: (Attempts processing) Processing briefly displays before the checkout process is completed.\n- `ENROLLED`: (Card enrolled) the card issuer\u2019s authentication window displays.\n- `UNKNOWN`: Card enrollment status cannot be determined.\n- `NOREDIRECT`: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer.\n\nThe following values can be returned if you are using rules-based payer authentication.\n- `RIBA`: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely\nto be challenged cannot be determined.\n- `RIBA_PASS`: The card-issuing bank supports risk-based authentication and it is likely that the\ncardholder will not be challenged to provide credentials, also known as _silent authentication_.\n\nFor details about possible values, see `pa_enroll_authentication_path` field description and \"Rules-Based Payer Authentication\"\nin [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" + }, + "authorizationPayload": { + "type": "string", + "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" + }, + "authenticationType": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" + }, + "authenticationTransactionContextId": { + "type": "string", + "maxLength": 30, + "description": "Payer authentication transaction identifier passed to link the validation and authorization calls.\n" + }, + "validityPeriod": { + "type": "integer", + "maxLength": 2, + "description": "Describes validity of OTP in minutes for incoming transaction. .\n" + }, + "cardholderMessage": { + "type": "string", + "maxLength": 128, + "description": "Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder.\nFor example, \u201cAdditional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.\u201d.\nThe Issuing Bank can optionally support this value.\n" + }, + "cavv": { + "type": "string", + "maxLength": 255, + "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" + }, + "cavvAlgorithm": { + "type": "string", + "maxLength": 1, + "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" + }, + "challengeCancelCode": { + "type": "string", + "maxLength": 2, + "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" + }, + "challengeRequired": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a challenge is required in order to complete authentication.\n**Note** Regional mandates might determine that a challenge is required.\n\nPossible values:\n- `Y`: Challenge required\n- `N`: Challenge not required\n**Note** Used by the Hybrid integration.\n" + }, + "decoupledAuthenticationIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" + }, + "directoryServerErrorCode": { + "type": "string", + "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" + }, + "directoryServerErrorDescription": { + "type": "string", + "maxLength": 4096, + "description": "Directory server text and additional detail about the error for this transaction.\n" + }, + "ecommerceIndicator": { + "type": "string", + "maxLength": 255, + "description": "Commerce indicator for cards not enrolled. This field contains one of these values:\n- `internet`: Card not enrolled, or card type not supported by payer authentication. No liability shift.\n- `js_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `js_failure`: J/Secure directory service is not available. No liability shift.\n- `spa`: Mastercard card not enrolled in the SecureCode program. No liability shift.\n- `vbv_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `vbv_failure`: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive\nthis result if Visa\u2019s directory service is not available. No liability shift.\n" + }, + "eci": { + "type": "string", + "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" + }, + "eciRaw": { + "type": "string", + "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" + }, + "effectiveAuthenticationType": { + "type": "string", + "maxLength": 2, + "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" + }, + "ivr": { + "type": "object", + "properties": { + "enabledMessage": { + "type": "boolean", + "description": "Flag to indicate if a valid IVR transaction was detected.\n" + }, + "encryptionKey": { + "type": "string", + "maxLength": 16, + "description": "Encryption key to be used in the event the ACS requires encryption of the credential field.\n" + }, + "encryptionMandatory": { + "type": "boolean", + "description": "Flag to indicate if the ACS requires the credential to be encrypted.\n" + }, + "encryptionType": { + "type": "string", + "maxLength": 20, + "description": "An indicator from the ACS to inform the type of encryption that should be used in the event the ACS requires encryption of the credential field.\n" + }, + "label": { + "type": "string", + "maxLength": 20, + "description": "An ACS Provided label that can be presented to the Consumer. Recommended use with an application.\n" + }, + "prompt": { + "type": "string", + "maxLength": 80, + "description": "An ACS provided string that can be presented to the Consumer. Recommended use with an application.\n" + }, + "statusMessage": { + "type": "string", + "maxLength": 80, + "description": "An ACS provided message that can provide additional information or details.\n" + } + } + }, + "networkScore": { + "type": "string", + "maxLength": 2, + "description": "The global score calculated by the CB scoring platform and returned to merchants.\n" + }, + "pareq": { + "type": "string", + "description": "Payer authentication request (PAReq) message that you need to forward to the ACS.\nThe value can be very large. The value is in base64.\n" + }, + "paresStatus": { + "type": "string", + "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" + }, + "proofXml": { + "type": "string", + "description": "Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need\nto show proof of enrollment checking, you may need to parse the string for the information required by the\npayment card company. The value can be very large. For details about possible values, see the `pa_enroll_proofxml` field description in\n[CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n- For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.\n- For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment\nchecking for any payer authentication transaction that you re-present because of a chargeback.\n" + }, + "proxyPan": { + "type": "string", + "description": "Encrypted version of the card number used in the payer authentication request message.\n" + }, + "sdkTransactionId": { + "type": "string", + "maxLength": 36, + "description": "SDK unique transaction identifier that is generated on each new transaction.\n" + }, + "signedParesStatusReason": { + "type": "string", + "maxLength": 2, + "description": "Provides additional information as to why the PAResStatus has a specific value.\n" + }, + "specificationVersion": { + "type": "string", + "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" + }, + "stepUpUrl": { + "type": "string", + "maxLength": 2048, + "description": "The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.\n" + }, + "threeDSServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" + }, + "ucafAuthenticationData": { + "type": "string", + "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" + }, + "ucafCollectionIndicator": { + "type": "string", + "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" + }, + "veresEnrolled": { + "type": "string", + "description": "Result of the enrollment check. This field can contain one of these values:\n- `Y`: Card enrolled or can be enrolled; you must authenticate. Liability shift.\n- `N`: Card not enrolled; proceed with authorization. Liability shift.\n- `U`: Unable to authenticate regardless of the reason. No liability shift.\n\n**Note** This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for\nthis processor, you must send the value of this field in your authorization request.\n\nThe following value can be returned if you are using rules-based Payer Authentication:\n- `B`: Indicates that authentication was bypassed.\n\nFor details, see `pa_enroll_veres_enrolled` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" + }, + "whiteListStatusSource": { + "type": "string", + "maxLength": 2, + "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" + }, + "xid": { + "type": "string", + "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" + }, + "directoryServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - `EXPIRED_CARD`\n - `SCORE_EXCEEDS_THRESHOLD`\n - `DECISION_PROFILE_REVIEW`\n - `DECISION_PROFILE_REJECT`\n - `CONSUMER_AUTHENTICATION_REQUIRED`\n - `INVALID_MERCHANT_CONFIGURATION`\n - `CONSUMER_AUTHENTICATION_FAILED`\n - `DECISION_PROFILE_CHALLENGE`\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" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "riskV1DecisionsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - `INVALID_REQUEST`\n - `DECLINED`\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - `MISSING_FIELD`\n - `INVALID_DATA`\n - `INVALID_ACCOUNT`\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "riskV1DecisionsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Basic DM Transaction", + "sample-name": "Create Decision Manager Case", + "value": { + "clientReferenceInformation": { + "code": "54323007", + "comments": "decision manager case", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "54323007", + "comments": "decision manager case", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "id": "5526663169230178269497", + "riskInformation": { + "score": "H", + "localTime": "12:11:56", + "infoCodes": { + "address": [ + "COR-BA", + "MM-BIN" + ] + }, + "profile": { + "name": "Example", + "selectorRule": "Default Active Profile" + }, + "rules": [ + { + "decision": "IGNORE", + "name": "Correctable errors in addresses" + }, + { + "decision": "REVIEW", + "name": "Order is above your AFS threshold for review." + }, + { + "decision": "IGNORE", + "name": "CVN not submitted" + } + ], + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A.", + "binCountry": "PL" + }, + "providers": {}, + "casePriority": "3" + }, + "status": "ACCEPTED", + "submitTimeUtc": "2019-03-13T16:12:00Z" + } + }, + "example1": { + "summary": "DM With Device Information", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "deviceInformation": { + "cookiesAccepted": "yes", + "hostName": "host.com", + "httpBrowserEmail": "xyz@gmail.com", + "userAgent": "Chrome", + "ipAddress": "64.124.61.215" + } + }, + "responseValue": { + "riskInformation": { + "score": { + "result": "99", + "modelUsed": "default" + }, + "localTime": "10:02:05", + "profile": { + "name": "Profile 1_test", + "selectorRule": "Default Active Profile" + }, + "rules": [ + { + "decision": "IGNORE", + "name": "Correctable errors in addresses" + }, + { + "decision": "REVIEW", + "name": "Order is above your AFS threshold for review." + }, + { + "decision": "IGNORE", + "name": "CVN not submitted" + } + ], + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + }, + "casePriority": "3" + }, + "ipAddress": { + "country": "us", + "city": "seattle", + "state": "wa", + "routingMethod": "fixed" + } + } + }, + "example2": { + "summary": "DM With Merchant Defined Information", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "riskInformation": { + "auxiliaryData": [ + { + "key": "1", + "value": "Test" + }, + { + "key": "2", + "value": "Test2" + } + ] + }, + "merchantDefinedInformation": [ + { + "key": "1", + "value": "Test" + }, + { + "key": "2", + "value": "Test2" + } + ] + }, + "responseValue": { + "riskInformation": { + "score": { + "result": "99", + "modelUsed": "default" + }, + "localTime": "10:02:05", + "profile": { + "name": "Profile 1_test", + "selectorRule": "Default Active Profile" + }, + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + }, + "casePriority": "3" + }, + "rules": [ + { + "decision": "REJECT", + "name": "Incorrect merchant defined data " + } + ] + } + }, + "example3": { + "summary": "DM With Travel Information", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "travelInformation": { + "completeRoute": "SFO-JFK:JFK-BLR", + "departureTime": "2011-03-20 11:30pm GMT", + "journeyType": "One way", + "legs": [ + { + "destination": "JFK", + "origination": "SFO" + }, + { + "destination": "BLR", + "origination": "JFK" + } + ] + } + }, + "responseValue": { + "riskInformation": { + "score": { + "result": "99", + "modelUsed": "default" + }, + "localTime": "10:02:05", + "profile": { + "name": "Profile 1_test", + "selectorRule": "Default Active Profile" + }, + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + }, + "casePriority": "3" + }, + "rules": [ + { + "decision": "IGNORE", + "name": "Correctable errors in addresses" + } + ] + } + }, + "example4": { + "summary": "DM With Buyer Information", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "buyerInformation": { + "hashedPassword": "", + "dateOfBirth": "19980505", + "personalIdentification": [ + { + "id": "1a23apwe98", + "type": "CPF" + } + ] + } + }, + "responseValue": { + "riskInformation": { + "score": { + "result": "99", + "modelUsed": "default" + }, + "localTime": "10:02:05", + "profile": { + "name": "Profile 1_test", + "selectorRule": "Default Active Profile" + }, + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + }, + "casePriority": "3" + }, + "rules": [ + { + "decision": "REJECT", + "name": "Incorrect BUYER data " + } + ] + } + }, + "example5": { + "summary": "DM With Shipping Information", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + }, + "shipTo": { + "address1": "96, powers street", + "address2": "", + "locality": "Clearwater milford", + "country": "IN", + "firstName": "James", + "lastName": "Smith", + "phoneNumber": "7606160717", + "administrativeArea": "KA", + "postalCode": "560056" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "54323007" + }, + "id": "5526665686910178269497", + "riskInformation": { + "score": { + "result": "99", + "modelUsed": "default" + }, + "localTime": "10:02:05", + "profile": { + "name": "Profile 1_test", + "selectorRule": "Default Active Profile" + }, + "infoCodes": { + "address": [ + "MM-A" + ] + }, + "rules": [ + { + "decision": "IGNORE", + "name": "Correctable errors in addresses" + }, + { + "decision": "REVIEW", + "name": "Order is above your AFS threshold for review." + }, + { + "decision": "IGNORE", + "name": "CVN not submitted" + } + ], + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A." + }, + "casePriority": "3" + } + } + }, + "example6": { + "summary": "DM With Score_Exceeds_Threshold Response", + "sample-name": "DM With Score_Exceeds_Threshold Response", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + }, + "shipTo": { + "address1": "96, powers street", + "address2": "", + "locality": "Clearwater milford", + "country": "IN", + "firstName": "James", + "lastName": "Smith", + "phoneNumber": "7606160717", + "administrativeArea": "KA", + "postalCode": "560056" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "54323007" + }, + "errorInformation": { + "reason": "SCORE_EXCEEDS_THRESHOLD", + "message": "Soft Decline - Fraud score exceeds threshold." + }, + "id": "5525558950470178269497", + "riskInformation": { + "score": { + "result": "90", + "factorCodes": [ + "D", + "Y" + ], + "modelUsed": "default" + }, + "localTime": "05:31:35", + "infoCodes": { + "address": [ + "COR-BA", + "MM-BIN" + ] + }, + "ipAddress": { + "country": "us", + "city": "seattle", + "state": "wa", + "routingMethod": "fixed" + } + }, + "status": "REJECTED", + "submitTimeUtc": "2019-03-14T09:31:35Z" + } + }, + "example7": { + "summary": "DM With Decision_Profile_Reject Response", + "sample-name": "DM With Decision_Profile_Reject Response", + "value": { + "clientReferenceInformation": { + "code": "54323007" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2020", + "number": "4444444444444448" + } + }, + "orderInformation": { + "billTo": { + "firstName": "James", + "lastName": "Smith", + "locality": "Clearwater milford", + "address1": "96, powers street", + "email": "test@visa.com", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "phoneNumber": "7606160717" + }, + "amountDetails": { + "currency": "USD", + "totalAmount": "144.14" + } + }, + "riskInformation": { + "profile": { + "name": "profile2" + }, + "score": { + "ignoreAvsResults": "false" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "54323007" + }, + "errorInformation": { + "reason": "DECISION_PROFILE_REJECT", + "message": "The order has been rejected by Decision Manager" + }, + "id": "5525558833540178269497", + "riskInformation": { + "score": { + "result": "96", + "factorCodes": [ + "H", + "V", + "Y" + ], + "modelUsed": "default" + }, + "localTime": "05:31:23", + "infoCodes": { + "address": [ + "COR-BA", + "MM-BIN" + ] + }, + "profile": { + "destinationQueue": "Example", + "name": "profile2", + "selectorRule": "Default Active Profile" + }, + "rules": [ + { + "decision": "IGNORE", + "name": "Correctable errors in addresses" + }, + { + "decision": "REVIEW", + "name": "Order is above your AFS threshold for review." + }, + { + "decision": "IGNORE", + "name": "CVN not submitted" + } + ], + "paymentInformation": { + "scheme": "VISA CREDIT", + "bin": "444444", + "accountType": "GOLD", + "issuer": "CREDIT AGRICOLE BANK POLSKA, S.A.", + "binCountry": "PL" + }, + "casePriority": "3" + }, + "status": "REJECTED", + "submitTimeUtc": "2019-03-14T09:31:29Z" + } + } + } + } + }, + "/risk/v1/authentication-setups": { + "post": { + "summary": "Setup Payer Auth", + "description": "A new service for Merchants to get reference_id for Digital Wallets to use in place of BIN number in Cardinal. Set up file while authenticating with Cardinal. This service should be called by Merchant when payment instrument chosen or changes. This service has to be called before enrollment check.", + "operationId": "payerAuthSetup", + "tags": [ + "Payer Authentication" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "x-devcenter-metaData": { + "categoryTag": "Payer_Authentication" + }, + "parameters": [ + { + "name": "payerAuthSetupRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "required": [ + "expirationMonth", + "expirationYear", + "number" + ], + "properties": { + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "required": [ + "transactionType", + "type", + "expirationMonth", + "expirationYear", + "number" + ], + "properties": { + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + } + } + }, + "fluidData": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the legacy Secure Storage token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 16, + "maxLength": 22 + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + } + } + }, + "tokenInformation": { + "type": "object", + "properties": { + "transientToken": { + "type": "string", + "description": "A temporary ID that represents the customer's payment data (which is securely stored in Visa Data Centers). Flex\nMicroform generates this ID and sets it to expire within 15 minutes from when the ID is generated or until the\nfirst payment authorization is carried out (whichever occurs first).\n\nValid value for the ID is a 64-character, alphanumeric string.\n\nExample: 1D08M4YB968R1F7YVL4TBBKYVNRIR02VZFH9CBYSQIJJXORPI1NK5C98D7F6EB53\n" + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Setup completed", + "schema": { + "title": "riskV1AuthenticationSetupsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status for payerAuthentication 201 setup calls. Possible value is:\n- COMPLETED\n- FAILED\n" + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "accessToken": { + "type": "string", + "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" + }, + "referenceId": { + "type": "string", + "maxLength": 50, + "description": "This identifier represents cardinal has started device data collection session and this must be passed in\nAuthentication JWT to Cardinal when invoking the deviceDataCollectionUrl.\n" + }, + "deviceDataCollectionUrl": { + "type": "string", + "maxLength": 100, + "description": "The deviceDataCollectionUrl is the location to send the Authentication JWT when invoking the Device Data collection process.\n" + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - EXPIRED_CARD\n - GENERAL_DECLINE\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" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "riskV1AuthenticationsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status for payerAuthentication 400 setup calls. Possible values are:\n- INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value is:\n- Encountered a Payer Authentication problem. Payer could not be setup.\n" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "riskV1AuthenticationsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Setup Completion with Card Number", + "value": { + "clientReferenceInformation": { + "code": "cybs_test", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2025", + "number": "4000000000000101", + "type": "001" + } + } + } + }, + "example1": { + "summary": "Setup Completion with Fluid Data Value and Payment Solution", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "paymentInformation": { + "fluidData": { + "value": "eyJkYXRhIjoiOFJTK2o1a2ZLRjZkTnkzNVwvOTluR3ZEVis0WUVlaStBb2VmUUNMXC9SNTN0TnVMeHJxTzh4b1g2SnBScm9WWUVUOUNvUkhIWFZMRjJNSVNIZlVtM25UczltdGFPTUdqcW1oeWdjTFpWVWI3OHhxYVVUT2JwWUxLelY0dFR1QmhvRkV4UVJ1d2lvTmo2bXJsRlRjUm5LNzdcL2lCR01yYVlZcXZTVnhGK3ViK1JXK3BGeTRDNUVUOVhmcHBkS2xHYXVpODdzcTBtYVlYVk9qOGFaNTFMWjZvS1NKZkR1clhvWEtLNHRqd1wvaDVRK1dcL0x2dnJxSUhmZmVhK21MZXVRY3RHK0k3UUN6MTRpVmdROUFEMW1oWFUrbVdwZXRUQWZ5WXhoVituZlh1NlpISGRDWFV1cUp6djQydHg4UlwvN0lvdld5OWx6Z0N3YnpuclVsY3pUcThkb3JtV3A4eXhYQklDNnJHRTdlTVJrS3oxZFwvUFFDXC9DS2J1NDhNK0R4XC9VejNoUFwvZ1NnRGoxakJNcUllUUZiRWFzcTRWTUV1ZG9FNUh1UjBcLzRQMXJmdG9EVlpwNnhFdnF1STY5dkt2YnZHcXpmTkpUNjVnPT0iLCJ2ZXJzaW9uIjoiRUNfdjEiLCJoZWFkZXIiOnsiYXBwbGljYXRpb25EYXRhIjoiNzQ2NTczNzQ2MTcwNzA2QzY5NjM2MTc0Njk2RjZFNjQ2MTc0NjEiLCJ0cmFuc2FjdGlvbklkIjoiNzQ2NTczNzQ3NDcyNjE2RTczNjE2Mzc0Njk2RjZFNjk2NCIsImVwaGVtZXJhbFB1YmxpY0tleSI6Ik1JSUJTekNDQVFNR0J5cUdTTTQ5QWdFd2dmY0NBUUV3TEFZSEtvWkl6ajBCQVFJaEFQXC9cL1wvXC84QUFBQUJBQUFBQUFBQUFBQUFBQUFBXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9NRnNFSVBcL1wvXC9cLzhBQUFBQkFBQUFBQUFBQUFBQUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC84QkNCYXhqWFlxanFUNTdQcnZWVjJtSWE4WlIwR3NNeFRzUFk3emp3K0o5SmdTd01WQU1TZE5naUc1d1NUYW1aNDRST2RKcmVCbjM2UUJFRUVheGZSOHVFc1FrZjR2T2JsWTZSQThuY0RmWUV0NnpPZzlLRTVSZGlZd3BaUDQwTGlcL2hwXC9tNDduNjBwOEQ1NFdLODR6VjJzeFhzN0x0a0JvTjc5UjlRSWhBUFwvXC9cL1wvOEFBQUFBXC9cL1wvXC9cL1wvXC9cL1wvXC8rODV2cXRweGVlaFBPNXlzTDhZeVZSQWdFQkEwSUFCQmJHK2xtTHJIWWtKSVwvSUUwcTU3dEN0bE5jK2pBWHNudVMrSnFlOFVcLzc0cSs5NVRnbzVFRjBZNks3b01LTUt5cTMwY3VQbmtIenkwMjVpU1BGdWczRT0iLCJwdWJsaWNLZXlIYXNoIjoieCtQbUhHMzdUNjdBWUFIenVqbGJyaW1JdzZZaFlYaVpjYjV3WnJCNGpRdz0ifSwic2lnbmF0dXJlIjoiTUlJRFFnWUpLb1pJaHZjTkFRY0NvSUlETXpDQ0F5OENBUUV4Q3pBSkJnVXJEZ01DR2dVQU1Bc0dDU3FHU0liM0RRRUhBYUNDQWlzd2dnSW5NSUlCbEtBREFnRUNBaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWRCUUF3SnpFbE1DTUdBMVVFQXg0Y0FHTUFhQUJ0QUdFQWFRQkFBSFlBYVFCekFHRUFMZ0JqQUc4QWJUQWVGdzB4TkRBeE1ERXdOakF3TURCYUZ3MHlOREF4TURFd05qQXdNREJhTUNjeEpUQWpCZ05WQkFNZUhBQmpBR2dBYlFCaEFHa0FRQUIyQUdrQWN3QmhBQzRBWXdCdkFHMHdnWjh3RFFZSktvWklodmNOQVFFQkJRQURnWTBBTUlHSkFvR0JBTkM4K2tndGdtdldGMU96amdETnJqVEVCUnVvXC81TUt2bE0xNDZwQWY3R3g0MWJsRTl3NGZJWEpBRDdGZk83UUtqSVhZTnQzOXJMeXk3eER3YlwvNUlrWk02MFRaMmlJMXBqNTVVYzhmZDRmek9wazNmdFphUUdYTkxZcHRHMWQ5VjdJUzgyT3VwOU1NbzFCUFZyWFRQSE5jc005OUVQVW5QcWRiZUdjODdtMHJBZ01CQUFHalhEQmFNRmdHQTFVZEFRUlJNRStBRUhaV1ByV3RKZDdZWjQzMWhDZzdZRlNoS1RBbk1TVXdJd1lEVlFRREhod0FZd0JvQUcwQVlRQnBBRUFBZGdCcEFITUFZUUF1QUdNQWJ3QnRnaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWRCUUFEZ1lFQWJVS1lDa3VJS1M5UVEybUZjTVlSRUltMmwrWGc4XC9KWHYrR0JWUUprT0tvc2NZNGlOREZBXC9iUWxvZ2Y5TExVODRUSHdOUm5zdlYzUHJ2N1JUWTgxZ3EwZHRDOHpZY0FhQWtDSElJM3lxTW5KNEFPdTZFT1c5a0prMjMyZ1NFN1dsQ3RIYmZMU0tmdVNnUVg4S1hRWXVaTGsyUnI2M044QXBYc1h3QkwzY0oweGdlQXdnZDBDQVFFd096QW5NU1V3SXdZRFZRUURIaHdBWXdCb0FHMEFZUUJwQUVBQWRnQnBBSE1BWVFBdUFHTUFid0J0QWhCY2wrUGYzK1U0cGsxM25WRDlud1FRTUFrR0JTc09Bd0lhQlFBd0RRWUpLb1pJaHZjTkFRRUJCUUFFZ1lBMG9MXC9KSWFTN0tra1RFNG1pOGRmU2tQVVwvdlp2cVwva2NYZ1pUdGJZbENtTFM4YzNuS2VZNVE0c2s4MXJnZkI1ampBMWJRZldhUHBKc05tVWNSS3gzS0FGUEtpNzE0WWVYdGUrcmc2V1k4MnVxcnlwRERiTkhqSWVpNjVqV0dvcGRZUEx6TEk5c1Z3NDh5OHlqSXY3SjFaQVlycnp6YjBwNzUzcUJUQ0ZEN1p3PT0ifQ==" + } + }, + "processingInformation": { + "paymentSolution": "001" + } + } + }, + "example2": { + "summary": "Setup Completion with Tokenized Card", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "paymentInformation": { + "tokenizedCard": { + "number": "4111111111111111", + "transactionType": "1", + "type": "001", + "expirationMonth": "11", + "expirationYear": "2025" + } + } + } + }, + "example3": { + "summary": "Setup Completion with TMS Token", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "paymentInformation": { + "customer": { + "customerId": "9CADDE97CC9254EBE0534136CF0AB358" + } + } + } + }, + "example4": { + "summary": "Setup Completion with Visa Checkout", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "paymentInformation": { + "visaCheckoutId": "4768462067836455354", + "paymentSolution": "visacheckout" + } + } + }, + "example5": { + "summary": "Setup Completion with Flex Transient Token", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "tokenInformation": { + "transientToken": "1D5ZX4HMOV20FKEBE3IO240JWYJ0NJ90B4V9XQ6SCK4BDN0W96E65E2A39052056" + } + } + }, + "example6": { + "summary": "Setup Completion with Secure Storage Token", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "paymentInformation": { + "customer": { + "customerId": "5795045921830181636348" + } + } + } + } + } + } + }, + "/risk/v1/authentications": { + "post": { + "summary": "Check Payer Auth Enrollment", + "description": "This call verifies that the card is enrolled in a card authentication program.", + "operationId": "checkPayerAuthEnrollment", + "tags": [ + "Payer Authentication" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "x-devcenter-metaData": { + "categoryTag": "Payer_Authentication" + }, + "parameters": [ + { + "name": "checkPayerAuthEnrollmentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains `currency` and `totalAmount` for this order.", + "required": [ + "currency", + "totalAmount" + ], + "properties": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" + } + } + }, + "preOrder": { + "type": "string", + "description": "Indicates whether cardholder is placing an order with a future availability or release date.\nThis field can contain one of these values:\n- MERCHANDISE_AVAILABLE: Merchandise available\n- FUTURE_AVAILABILITY: Future availability\n" + }, + "preOrderDate": { + "type": "string", + "maxLength": 10, + "description": "Expected date that a pre-ordered purchase will be available. Format: YYYYMMDD\n" + }, + "reordered": { + "type": "boolean", + "description": "Indicates whether the cardholder is reordering previously purchased merchandise.\nThis field can contain one of these values:\n- false: First time ordered\n- true: Reordered\n" + }, + "shipTo": { + "type": "object", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "destinationTypes": { + "type": "string", + "maxLength": 25, + "description": "Shipping destination of item. Example: Commercial, Residential, Store\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "destinationCode": { + "type": "integer", + "maxLength": 2, + "description": "Indicates destination chosen for the transaction. Possible values:\n- 01- Ship to cardholder billing address\n- 02- Ship to another verified address on file with merchant\n- 03- Ship to address that is different than billing address\n- 04- Ship to store (store address should be populated on request)\n- 05- Digital goods\n- 06- Travel and event tickets, not shipped\n- 07- Other\n" + }, + "method": { + "type": "string", + "maxLength": 10, + "description": "Shipping method for the product. Possible values:\n- lowcost: Lowest-cost service\n- sameday: Courier or same-day service\n- oneday: Next-day or overnight service\n- twoday: Two-day service\n- threeday: Three-day service\n- pickup: Store pick-up\n- other: Other shipping method\n- none: No shipping method because product is a service or subscription\nRequired for American Express SafeKey (U.S.).\n" + } + } + }, + "lineItems": { + "type": "array", + "description": "This array contains detailed information about individual products in the order.", + "items": { + "type": "object", + "required": [ + "unitPrice" + ], + "properties": { + "totalAmount": { + "type": "string", + "maxLength": 13, + "description": "Total amount for the item. Normally calculated as the unit price times quantity.\n\nWhen `orderInformation.lineItems[].productCode` is \"gift_card\", this is the purchase amount total\nfor prepaid gift cards in major units.\n\nExample: 123.45 USD = 123\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "giftCardCurrency": { + "type": "integer", + "maxLength": 3, + "description": "When `orderInformation.lineItems[].productCode` is \"gift_card\", this is the\ncurrency used for the gift card purchase.\n\nFor details, see `pa_gift_card_currency` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/Payer_Authentication_SCMP_API.pdf)\n\nFor the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n" + }, + "productSKU": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productDescription": { + "type": "string", + "description": "Brief description of item." + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "passenger": { + "type": "object", + "description": "Contains travel-related passenger details used by DM service only.", + "properties": { + "type": { + "type": "string", + "maxLength": 32, + "description": "Passenger classification associated with the price of the ticket. You can use one of the following values:\n- `ADT`: Adult\n- `CNN`: Child\n- `INF`: Infant\n- `YTH`: Youth\n- `STU`: Student\n- `SCR`: Senior Citizen\n- `MIL`: Military\n" + }, + "status": { + "type": "string", + "maxLength": 32, + "description": "Your company's passenger classification, such as with a frequent flyer program. In this case, you might use\nvalues such as `standard`, `gold`, or `platinum`.\n" + }, + "phone": { + "type": "string", + "maxLength": 15, + "description": "Passenger's phone number. If the order is from outside the U.S., CyberSource recommends that you include\nthe [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's first name." + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Passenger's last name." + }, + "id": { + "type": "string", + "maxLength": 40, + "description": "ID of the passenger to whom the ticket was issued. For example, you can use this field for the frequent flyer\nnumber.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Passenger's email address, including the full domain name, such as jdoe@example.com." + }, + "nationality": { + "type": "string", + "maxLength": 2, + "description": "Passenger's nationality country. Use the two character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)." + } + } + }, + "shippingDestinationTypes": { + "type": "string", + "maxLength": 50, + "description": "Destination to where the item will be shipped. Example: Commercial, Residential, Store\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + } + } + } + }, + "billTo": { + "type": "object", + "required": [ + "address1", + "country", + "administrativeArea", + "postalCode", + "email", + "firstName", + "lastName" + ], + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + } + } + }, + "totalOffersCount": { + "type": "string", + "maxLength": 2, + "description": "Total number of articles/items in the order as a numeric decimal count.\nPossible values: 00 - 99\n" + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "required": [ + "type", + "expirationMonth", + "expirationYear", + "number" + ], + "properties": { + "bin": { + "type": "string", + "maxLength": 6, + "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "required": [ + "type", + "expirationMonth", + "expirationYear", + "number", + "transactionType", + "cryptogram", + "securityCode" + ], + "properties": { + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "cryptogram": { + "type": "string", + "maxLength": 255, + "description": "This field contains token information." + }, + "securityCode": { + "type": "string", + "maxLength": 4, + "description": "Card Verification Number (CVN).\n\n#### Ingenico ePayments\nDo not include this field when **commerceIndicator=recurring**.\n**Note** Ingenico ePayments was previously called _Global Collect_.\n\nFor details, see `customer_cc_cv_number` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + } + } + }, + "fluidData": { + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + } + } + }, + "tokenInformation": { + "type": "object", + "properties": { + "transientToken": { + "type": "string", + "description": "A temporary ID that represents the customer's payment data (which is securely stored in Visa Data Centers). Flex\nMicroform generates this ID and sets it to expire within 15 minutes from when the ID is generated or until the\nfirst payment authorization is carried out (whichever occurs first).\n\nValid value for the ID is a 64-character, alphanumeric string.\n\nExample: 1D08M4YB968R1F7YVL4TBBKYVNRIR02VZFH9CBYSQIJJXORPI1NK5C98D7F6EB53\n" + } + } + }, + "buyerInformation": { + "type": "object", + "required": [ + "mobilePhone" + ], + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "personalIdentification": { + "description": "This array contains detailed information about the buyer's form of persoanl identification.", + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" + }, + "issuedBy": { + "type": "string", + "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "verificationResults": { + "type": "string", + "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" + } + } + } + }, + "mobilePhone": { + "type": "integer", + "maxLength": 25, + "description": "Cardholder\u2019s mobile phone number.\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "rawData": { + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "type": "string", + "description": "Field that contains the device fingerprint data from the specified provider. The value should be Base64 encoded.\n" + }, + "provider": { + "type": "string", + "maxLength": 32, + "description": "Possible values:\n- cardinal\n- inauth\n- threatmetrix\n" + } + } + } + }, + "httpAcceptBrowserValue": { + "type": "string", + "maxLength": 255, + "description": "Value of the Accept header sent by the customer\u2019s web browser.\n**Note** If the customer\u2019s browser provides a value, you must include it in your request.\n" + }, + "httpAcceptContent": { + "type": "string", + "maxLength": 256, + "description": "The exact content of the HTTP accept header.\n" + }, + "httpBrowserLanguage": { + "type": "string", + "maxLength": 8, + "description": "Value represents the browser language as defined in IETF BCP47.\nExample:en-US, refer https://en.wikipedia.org/wiki/IETF_language_tag for more details.\n" + }, + "httpBrowserJavaEnabled": { + "type": "boolean", + "description": "A Boolean value that represents the ability of the cardholder browser to execute Java.\nValue is returned from the navigator.javaEnabled property. Possible Values:True/False\n" + }, + "httpBrowserJavaScriptEnabled": { + "type": "boolean", + "description": "A Boolean value that represents the ability of the cardholder browser to execute JavaScript. Possible Values:True/False.\n**Note**: Merchants should be able to know the values from fingerprint details of cardholder's browser.\n" + }, + "httpBrowserColorDepth": { + "type": "string", + "maxLength": 2, + "description": "Value represents the bit depth of the color palette for displaying images, in bits per pixel.\nExample : 24, refer https://en.wikipedia.org/wiki/Color_depth for more details\n" + }, + "httpBrowserScreenHeight": { + "type": "string", + "maxLength": 6, + "description": "Total height of the Cardholder's scree in pixels, example: 864.\n" + }, + "httpBrowserScreenWidth": { + "type": "string", + "maxLength": 6, + "description": "Total width of the cardholder's screen in pixels. Example: 1536.\n" + }, + "httpBrowserTimeDifference": { + "type": "string", + "maxLength": 5, + "description": "Time difference between UTC time and the cardholder browser local time, in minutes, Example:300\n" + }, + "userAgentBrowserValue": { + "type": "string", + "maxLength": 255, + "description": "Value of the User-Agent header sent by the customer\u2019s web browser.\nNote If the customer\u2019s browser provides a value, you must include it in your request.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "url": { + "type": "string", + "maxLength": 255, + "description": "Address of company's website provided by merchant\n" + } + } + }, + "merchantName": { + "type": "string", + "maxLength": 25, + "description": "Your company\u2019s name as you want it to appear to the customer in the issuing bank\u2019s authentication form.\nThis value overrides the value specified by your merchant bank.\n" + } + } + }, + "acquirerInformation": { + "type": "object", + "properties": { + "acquirerBin": { + "type": "string", + "maxLength": 11, + "description": "Acquirer bank ID number that corresponds to a certificate that Cybersource already has.This ID has this format. 4XXXXX for Visa and 5XXXXX for Mastercard.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Issuers need to be aware of the Acquirer's Country Code when the Acquirer country differs from the Merchant country and the Acquirer is in the EEA (European Economic Area).\n" + }, + "password": { + "type": "string", + "maxLength": 8, + "description": "Registered password for the Visa directory server.\n" + }, + "merchantId": { + "type": "string", + "maxLength": 15, + "description": "Username for the visa directory server that is created when your acquirer sets up your account. This ID might be the same as your merchant ID. the username can be 15 or 23 characters.\n" + } + } + }, + "recurringPaymentInformation": { + "type": "object", + "description": "This object contains recurring payment information.", + "properties": { + "endDate": { + "type": "string", + "maxLength": 10, + "description": "The date after which no further recurring authorizations should be performed. Format: `YYYY-MM-DD`\n**Note** This field is required for recurring transactions.\n" + }, + "frequency": { + "type": "integer", + "maxLength": 4, + "description": "Integer value indicating the minimum number of days between recurring authorizations. A frequency\nof monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months.\n\nExample: 6 months = 168\n\nExample values accepted (31 days):\n- 31\n- 031\n- 0031\n\n**Note** This field is required for recurring transactions.\n" + }, + "numberOfPayments": { + "type": "integer", + "maxLength": 3, + "description": "Total number of payments for the duration of the recurring subscription.\n" + }, + "originalPurchaseDate": { + "type": "string", + "maxLength": 17, + "description": "Date of original purchase. Required for recurring transactions.\nFormat: `YYYY-MM-DDTHH:MM:SSZ`\n**Note**: If this field is empty, the current date is used.\n" + }, + "sequenceNumber": { + "type": "integer", + "maxLength": 3, + "description": "This field is mandatory for Cartes Bancaires recurring transactions on Credit Mutuel-CIC. \nThis field records recurring sequence, e.g. 1st for initial, 2 for subsequent, 3 etc\n" + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "strongAuthentication": { + "type": "object", + "properties": { + "authenticationIndicator": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of Authentication request\n\n01 - Payment transaction\n\n02 - Recurring transaction\n\n03 - Installment transaction\n\n04 - Add card\n\n05 - Maintain card\n\n06 - Cardholder verification as part of EMV token ID and V\n" + } + } + }, + "authenticationType": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" + }, + "acsWindowSize": { + "type": "string", + "maxLength": 2, + "description": "An override field that a merchant can pass in to set the challenge window size to display to the end cardholder. The ACS (Active Control Server) will reply with content that is formatted appropriately to this window size to allow for the best user experience. The sizes are width x height in pixels of the window displayed in the cardholder browser window.\n\n01 - 250x400\n\n02 - 390x400\n\n03 - 500x600\n\n04 - 600x400\n\n05 - Full page\n" + }, + "alternateAuthenticationData": { + "type": "string", + "maxLength": 2048, + "description": "Data that documents and supports a specific authentication process.\n" + }, + "alternateAuthenticationDate": { + "type": "string", + "maxLength": 14, + "description": "Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM\n" + }, + "alternateAuthenticationMethod": { + "type": "string", + "description": "Mechanism used by the cardholder to authenticate to the 3D Secure requestor.\nPossible values:\n- `01`: No authentication occurred\n- `02`: Login using merchant system credentials\n- `03`: Login using Federated ID\n- `04`: Login using issuer credentials\n- `05`: Login using third-party authenticator\n- `06`: Login using FIDO Authenticator\n" + }, + "authenticationDate": { + "type": "string", + "maxLength": 14, + "description": "The date/time of the authentication at the 3DS servers. RISK update authorization service in auth request\npayload with value returned in `consumerAuthenticationInformation.alternateAuthenticationData` if merchant calls via CYBS or field can be\nprovided by merchant in authorization request if calling an external 3DS provider.\n\nThis field is supported for Cartes Bancaires Fast'R transactions on Credit Mutuel-CIC.\nFormat: YYYYMMDDHHMMSS\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" + }, + "transactionFlowIndicator": { + "type": "integer", + "maxLength": 2, + "description": "This field is only applicable to Rupay and is optional. Merchant will have to pass a valid value from 01 through 07 which indicates the transaction flow. Below are the possible values.\n01:NW \u2013 Transaction performed at domestic merchant.\n02:TW - Transaction performed at domestic merchant along with Token provisioning.\n03:IT \u2013 Transaction performed at International merchant.\n04:AT- Authentication Transaction Only.\n05:AW- Authentication transaction for provisioning.\n06:DI- Domestic InApp Transaction.\n07:II- International InApp transaction.\n" + }, + "challengeCancelCode": { + "type": "string", + "maxLength": 2, + "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" + }, + "challengeCode": { + "type": "string", + "description": "Possible values:\n- `01`: No preference\n- `02`: No challenge request\n- `03`: Challenge requested (3D Secure requestor preference)\n- `04`: Challenge requested (mandate)\n- `05`: No challenge requested (transactional risk analysis is already performed)\n- `06`: No challenge requested (Data share only)\n- `07`: No challenge requested (strong consumer authentication is already performed)\n- `08`: No challenge requested (utilize whitelist exemption if no challenge required)\n- `09`: Challenge requested (whitelist prompt requested if challenge required)\n**Note** This field will default to `01` on merchant configuration and can be overridden by the merchant.\nEMV 3D Secure version 2.1.0 supports values `01-04`. Version 2.2.0 supports values `01-09`.\n\nFor details, see `pa_challenge_code` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html)\n" + }, + "challengeStatus": { + "type": "string", + "maxLength": 2, + "description": "The `consumerAuthenticationInformation.challengeCode` indicates the authentication type/level, or challenge, that was presented to the cardholder\nat checkout by the merchant when calling the Carte Bancaire 3DS servers via CYBS RISK services. It conveys to\nthe issuer the alternative authentication methods that the consumer used.\n" + }, + "customerCardAlias": { + "type": "string", + "maxLength": 128, + "description": "An alias that uniquely identifies the customer's account and credit card on file.\nNote This field is required if Tokenization is enabled in the merchant profile settings.\n" + }, + "decoupledAuthenticationIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" + }, + "decoupledAuthenticationMaxTime": { + "type": "string", + "maxLength": 5, + "description": "Indicates the maximum amount of time that the 3DS Requestor will wait for an ACS (Active control server) to provide the results of a Decoupled Authentication transaction (in minutes).\nPossible Values: Numeric values between 1 and 10080 accepted.\n" + }, + "defaultCard": { + "type": "boolean", + "description": "Indicates that the card being used is the one designated as the primary payment card for purchase.\nRecommended for Discover ProtectBuy.\n" + }, + "deviceChannel": { + "type": "string", + "maxLength": 10, + "description": "Determines the channel that the transaction came through. Possible Values: SDK/Browser/3RI. 3RI - 3DS request initiated.\n" + }, + "installmentTotalCount": { + "type": "integer", + "maxLength": 4, + "description": "An integer value greater than 1 indicating the max number of permitted authorizations for installment payments.\n**Note** This is required if the merchant and cardholder have agreed to installment payments.\n" + }, + "merchantFraudRate": { + "type": "string", + "maxLength": 2, + "description": "Calculated by merchants as per PSD2** RTS** (EEA** card fraud divided by all EEA card volumes).\nPossible Values:\n1 = Represents fraud rate <=1\n\n2 = Represents fraud rate >1 and <=6\n\n3 = Represents fraud rate >6 and <=13\n\n4 = Represents fraud rate >13 and <=25\n\n5 = Represents fraud rate >25\n\nEEA** = European Economic Area\nRTS** = Regulatory Technical Standards\nPSD2** = Payment Services Directive\n" + }, + "marketingOptIn": { + "type": "boolean", + "description": "Indicates whether the customer has opted in for marketing offers.\nRecommended for Discover ProtectBuy.\n" + }, + "marketingSource": { + "type": "string", + "maxLength": 40, + "description": "Indicates origin of the marketing offer. Recommended for Discover ProtectBuy.\n" + }, + "mcc": { + "type": "string", + "maxLength": 4, + "description": "Merchant category code.\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "merchantScore": { + "type": "integer", + "maxLength": 2, + "description": "Risk Score provided by merchants. This is specific for CB transactions.\n" + }, + "messageCategory": { + "type": "string", + "description": "Category of the message for a specific use case. Possible values:\n\n- `01`: PA- payment authentication\n- `02`: NPA- non-payment authentication\n- `03-79`: Reserved for EMVCo future use (values invalid until defined by EMVCo)\n- `80-99`: Reserved for DS use\n" + }, + "npaCode": { + "type": "string", + "maxLength": 2, + "description": "Non-Payer Authentication Indicator.\nPossible values:\n- `01`: Add card\n- `02`: Maintain card information\n- `03`: Cardholder verification for EMV token\n- `04-80` Reserved for EMVCo\n- `80-90` Reserved DS\n" + }, + "overridePaymentMethod": { + "type": "string", + "description": "Specifies the Brazilian payment account type used for the transaction.\nThis field overrides other payment types that might be specified in the request.\nUse one of the following values for this field:\n- `NA`: Not applicable. Do not override other payment types that are specified in the request.\n- `CR`: Credit card.\n- `DB`: Debit card.\n- `VSAVR`: Visa Vale Refeicao\n- `VSAVA`: Visa Vale Alimentacao\n**Important** Required only for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "overrideCountryCode": { + "type": "string", + "maxLength": 2, + "description": "Two-character [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)..\n" + }, + "priorAuthenticationData": { + "type": "string", + "maxLength": 2048, + "description": "This field carry data that the ACS can use to verify the authentication process.\n" + }, + "priorAuthenticationMethod": { + "type": "string", + "maxLength": 2, + "description": "Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor.\n\n01 - Frictionless authentication occurred by ACS\n\n02 - Cardholder challenge occurred by ACS\n\n03 - AVS verified\n\n04 - Other issuer methods\n\n05-79 - Reserved for EMVCo future use (values invalid until defined by EMVCo)\n\n80-99 - Reserved for DS use\n" + }, + "priorAuthenticationReferenceId": { + "type": "string", + "maxLength": 36, + "description": "This data element contains a ACS Transaction ID for a prior authenticated transaction.\nFor example, the first recurring transaction that was authenticated with the cardholder\n" + }, + "priorAuthenticationTime": { + "type": "string", + "maxLength": 12, + "description": "Date and time in UTC of the prior cardholder authentication. Format \u2013 YYYYMMDDHHMM\n" + }, + "productCode": { + "type": "string", + "maxLength": 3, + "description": "Specifies the product code, which designates the type of transaction.\nSpecify one of the following values for this field:\n- AIR: Airline purchase\nImportant Required for American Express SafeKey (U.S.).\n- `ACC`: Accommodation Rental\n- `ACF`: Account funding\n- `CHA`: Check acceptance\n- `DIG`: Digital Goods\n- `DSP`: Cash Dispensing\n- `GAS`: Fuel\n- `GEN`: General Retail\n- `LUX`: Luxury Retail\n- `PAL`: Prepaid activation and load\n- `PHY`: Goods or services purchase\n- `QCT`: Quasi-cash transaction\n- `REN`: Car Rental\n- `RES`: Restaurant\n- `SVC`: Services\n- `TBD`: Other\n- `TRA`: Travel\n**Important** Required for Visa Secure transactions in Brazil.\nDo not use this request field for any other types of transactions.\n" + }, + "returnUrl": { + "type": "string", + "maxLength": 2048, + "description": "The URL of the merchant\u2019s return page. CyberSource adds this return URL to the step-up JWT and returns it in the\nresponse of the Payer Authentication enrollment call. The merchant's return URL page serves as a listening URL.\nOnce the bank session completes, the merchant receives a POST to their URL. This response contains the completed\nbank session\u2019s transactionId. The merchant\u2019s return page should capture the transaction ID and send it in the\nPayer Authentication validation call.\n" + }, + "requestorId": { + "type": "string", + "maxLength": 35, + "description": "Cardinal's directory server assigned 3DS Requestor ID value" + }, + "requestorInitiatedAuthenticationIndicator": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of 3RI request.\n\nPossible Values:\n\n01 - Recurring transaction\n\n02 - Installment transaction\n\n03 - Add card\n\n04 - Maintain card\n\n05 - Account verification\n\n06 - Split/delayed shipment\n\n07 - Top-up\n\n08 - Mail Order\n\n09 - Telephone Order\n\n10 - Whitelist status check\n\n11 - Other payment\n" + }, + "requestorName": { + "type": "string", + "maxLength": 40, + "description": "Cardinal's directory server assigned 3DS Requestor Name value" + }, + "referenceId": { + "type": "string", + "maxLength": 50, + "description": "Reference ID that corresponds to the device fingerprinting data that was collected previously.\nNote Required for Hybrid integration.\n" + }, + "sdkMaxTimeout": { + "type": "string", + "maxLength": 2, + "description": "This field indicates the maximum amount of time for all 3DS 2.0 messages to be communicated between all components (in minutes).\n\nPossible Values:\n\nGreater than or equal to 05 (05 is the minimum timeout to set)\n\nCardinal Default is set to 15\n\nNOTE: This field is a required 3DS 2.0 field and Cardinal sends in a default of 15 if nothing is passed\n" + }, + "secureCorporatePaymentIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates dedicated payment processes and procedures were used, potential secure corporate payment exemption applies.\nPossible Values : 0/1\n" + }, + "transactionMode": { + "type": "string", + "description": "Transaction mode identifier. Identifies the channel from which the transaction originates.\nPossible values:\n\n- `M`: MOTO (Mail Order Telephone Order)\n- `R`: Retail\n- `S`: eCommerce\n- `P`: Mobile Device\n- `T`: Tablet\n" + }, + "whiteListStatus": { + "type": "string", + "maxLength": 1, + "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" + } + } + }, + "riskInformation": { + "type": "object", + "properties": { + "buyerHistory": { + "type": "object", + "properties": { + "customerAccount": { + "type": "object", + "properties": { + "lastChangeDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder\u2019s account was last changed.\nThis includes changes to the billing or shipping address, new payment accounts or new users added.\nRecommended for Discover ProtectBuy.\n" + }, + "creationHistory": { + "type": "string", + "description": "The values from the enum can be:\n- GUEST\n- NEW_ACCOUNT\n- EXISTING_ACCOUNT\n" + }, + "modificationHistory": { + "type": "string", + "description": "This field is applicable only in case of EXISTING_ACCOUNT in creationHistory. Possible values:\n- ACCOUNT_UPDATED_NOW\n- ACCOUNT_UPDATED_PAST\n" + }, + "passwordHistory": { + "type": "string", + "description": "This only applies for EXISTING_ACCOUNT in creationHistory.\nThe values from the enum can be:\n- PASSWORD_CHANGED_NOW\n- PASSWORD_CHANGED_PAST\n- PASSWORD_NEVER_CHANGED\n" + }, + "createDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder opened the account.\nRecommended for Discover ProtectBuy.\nThis only applies for EXISTING_ACCOUNT in creationHistory.\n" + }, + "passwordChangeDate": { + "type": "string", + "maxLength": 10, + "description": "Date the cardholder last changed or reset password on account.\nRecommended for Discover ProtectBuy.\nThis only applies for PASSWORD_CHANGED_PAST in passwordHistory.\n" + } + } + }, + "accountHistory": { + "type": "object", + "properties": { + "firstUseOfShippingAddress": { + "type": "boolean", + "description": "Applicable when this is not a guest account.\n" + }, + "shippingAddressUsageDate": { + "type": "string", + "maxLength": 10, + "description": "Date when the shipping address for this transaction was first used.\nRecommended for Discover ProtectBuy.\nIf `firstUseOfShippingAddress` is false and not a guest account, then this date is entered.\n" + } + } + }, + "accountPurchases": { + "type": "integer", + "maxLength": 4, + "description": "Number of purchases with this cardholder account during the previous six months.\nRecommended for Discover ProtectBuy.\n" + }, + "addCardAttempts": { + "type": "integer", + "maxLength": 3, + "description": "Number of add card attempts in the last 24 hours.\nRecommended for Discover ProtectBuy.\n" + }, + "priorSuspiciousActivity": { + "type": "boolean", + "description": "Indicates whether the merchant experienced suspicious activity (including previous fraud) on the account.\nRecommended for Discover ProtectBuy.\n" + }, + "paymentAccountHistory": { + "type": "string", + "description": "This only applies for NEW_ACCOUNT and EXISTING_ACCOUNT in creationHistory. Possible values are:\n- PAYMENT_ACCOUNT_EXISTS\n- PAYMENT_ACCOUNT_ADDED_NOW\n" + }, + "paymentAccountDate": { + "type": "integer", + "maxLength": 8, + "description": "Date applicable only for PAYMENT_ACCOUNT_EXISTS in paymentAccountHistory\n" + }, + "transactionCountDay": { + "type": "integer", + "maxLength": 3, + "description": "Number of transaction (successful or abandoned) for this cardholder account within the last 24 hours.\nRecommended for Discover ProtectBuy.\n" + }, + "transactionCountYear": { + "type": "integer", + "maxLength": 3, + "description": "Number of transaction (successful or abandoned) for this cardholder account within the last year.\nRecommended for Discover ProtectBuy.\n" + } + } + } + } + }, + "travelInformation": { + "type": "object", + "properties": { + "legs": { + "type": "array", + "items": { + "type": "object", + "properties": { + "origination": { + "type": "string", + "maxLength": 3, + "description": "Use to specify the airport code for the origin of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco.\nDo not use the colon (:) or the dash (-). For airport codes, see the IATA Airline and Airport Code Search.\nThe leg number can be a positive integer from 0 to N.\nFor example:\n`travelInformation.legs.0.origination=SFO`\n`travelInformation.legs.1.origination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_orig` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "destination": { + "type": "string", + "maxLength": 3, + "description": "Use to specify the airport code for the destination of the leg of the trip, which is designated by the pound (#)\nsymbol in the field name. This code is usually three digits long, for example: SFO = San Francisco. Do not use the\ncolon (:) or the dash (-). For airport codes, see [IATA Airline and Airport Code Search](https://www.iata.org/publications/Pages/code-search.aspx). The leg number can be a\npositive integer from 0 to N.\nFor example:\n\n`travelInformation.legs.0.destination=SFO`\n`travelInformation.legs.1.destination=SFO`\n\n**Note** In your request, send either the complete route or the individual legs (`legs.0.origination` and `legs.n.destination`). If you\nsend all the fields, the complete route takes precedence over the individual legs.\n\nFor details, see the `decision_manager_travel_leg#_dest` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "carrierCode": { + "type": "string", + "maxLength": 2, + "description": "International Air Transport Association (IATA) code for the carrier for this leg of the trip.\nRequired for each leg.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + }, + "departureDate": { + "type": "string", + "description": "Departure date for the first leg of the trip. Format: YYYYMMDD.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + } + } + } + }, + "numberOfPassengers": { + "type": "integer", + "maxLength": 3, + "description": "Number of passengers for whom the ticket was issued.\nIf you do not include this field in your request, CyberSource uses a default value of 1.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + }, + "passengers": { + "type": "array", + "items": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the passenger to whom the ticket was issued.\nIf there are multiple passengers, include all listed on the ticket.\nDo not include special characters such as commas, hyphens, or apostrophes.\nOnly ASCII characters are supported.\nRequired for American Express SafeKey (U.S.) for travel-related requests.\n" + } + } + } + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "items": { + "type": "object", + "description": "Contains merchant-defined key-value pairs.", + "properties": { + "key": { + "type": "string", + "maxLength": 255, + "description": "Fields that you can use to store information. The value\nappears in the Case Management Details window in the\nBusiness Center. The first four fields are the same fields\nthat are used by the Secure Data services. See request\ncode examples.\n**Warning** Merchant-defined data fields are not intended\nto and must not be used to capture personally identifying\ninformation. Accordingly, merchants are prohibited from\ncapturing, obtaining, and/or transmitting any personally\nidentifying information in or via the merchant-defined data\nfields. Personally identifying information includes, but is\nnot limited to, address, credit card number, social security\nnumber, driver's license number, state-issued\nidentification number, passport number, and card\nverification numbers (CVV, CVC2, CVV2, CID, CVN). In\nthe event CyberSource discovers that a merchant is\ncapturing and/or transmitting personally identifying\ninformation via the merchant-defined data fields, whether\nor not intentionally, CyberSource will immediately\nsuspend the merchant's account, which will result in a\nrejection of any and all transaction requests submitted by\nthe merchant after the point of suspension.\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "String value for the key" + } + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1AuthenticationsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "submitTimeLocal": { + "type": "string", + "description": "Time that the transaction was submitted in local time. Generated by Cybersource." + }, + "status": { + "type": "string", + "description": "The status for payerAuthentication 201 enroll and validate calls. Possible values are:\n- `AUTHENTICATION_SUCCESSFUL`\n- `PENDING_AUTHENTICATION`\n- `INVALID_REQUEST`\n- `AUTHENTICATION_FAILED`\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value is:\n- The cardholder is enrolled in Payer Authentication. Please authenticate\nthe cardholder before continuing with the transaction.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "accessToken": { + "type": "string", + "description": "JSON Web Token (JWT) used to authenticate the consumer with the authentication provider, such as, CardinalCommerce or Rupay.\nNote - Max Length of this field is 2048 characters.\n" + }, + "acsRenderingType": { + "type": "string", + "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" + }, + "acsTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" + }, + "acsUrl": { + "type": "string", + "maxLength": 2048, + "description": "URL for the card-issuing bank\u2019s authentication form that you receive when the card is enrolled.\nThe value can be very large.\n" + }, + "authenticationPath": { + "type": "string", + "description": "Indicates what displays to the customer during the authentication process.\nThis field can contain one of these values:\n- `ADS`: (Card not enrolled) customer prompted to activate the card during the checkout process.\n- `ATTEMPTS`: (Attempts processing) Processing briefly displays before the checkout process is completed.\n- `ENROLLED`: (Card enrolled) the card issuer\u2019s authentication window displays.\n- `UNKNOWN`: Card enrollment status cannot be determined.\n- `NOREDIRECT`: (Card not enrolled, authentication unavailable, or error occurred) nothing displays to the customer.\n\nThe following values can be returned if you are using rules-based payer authentication.\n- `RIBA`: The card-issuing bank supports risk-based authentication, but whether the cardholder is likely\nto be challenged cannot be determined.\n- `RIBA_PASS`: The card-issuing bank supports risk-based authentication and it is likely that the\ncardholder will not be challenged to provide credentials, also known as _silent authentication_.\n\nFor details about possible values, see `pa_enroll_authentication_path` field description and \"Rules-Based Payer Authentication\"\nin [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" + }, + "authorizationPayload": { + "type": "string", + "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" + }, + "authenticationType": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" + }, + "authenticationTransactionContextId": { + "type": "string", + "maxLength": 30, + "description": "Payer authentication transaction identifier passed to link the validation and authorization calls.\n" + }, + "validityPeriod": { + "type": "integer", + "maxLength": 2, + "description": "Describes validity of OTP in minutes for incoming transaction. .\n" + }, + "cardholderMessage": { + "type": "string", + "maxLength": 128, + "description": "Text provided by the ACS/Issuer to Cardholder during a Frictionless or Decoupled transaction.The Issuer can provide information to Cardholder.\nFor example, \u201cAdditional authentication is needed for this transaction, please contact (Issuer Name) at xxx-xxx-xxxx.\u201d.\nThe Issuing Bank can optionally support this value.\n" + }, + "cavv": { + "type": "string", + "maxLength": 255, + "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" + }, + "cavvAlgorithm": { + "type": "string", + "maxLength": 1, + "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" + }, + "challengeCancelCode": { + "type": "string", + "maxLength": 2, + "description": "An indicator as to why the transaction was canceled.\nPossible Values:\n\n- `01`: Cardholder selected Cancel.\n- `02`: Reserved for future EMVCo use (values invalid until defined by EMVCo).\n- `03`: Transaction Timed Out\u2014Decoupled Authentication\n- `04`: Transaction timed out at ACS\u2014other timeouts\n- `05`: Transaction Timed out at ACS - First CReq not received by ACS\n- `06`: Transaction Error\n- `07`: Unknown\n- `08`: Transaction Timed Out at SDK\n" + }, + "challengeRequired": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether a challenge is required in order to complete authentication.\n**Note** Regional mandates might determine that a challenge is required.\n\nPossible values:\n- `Y`: Challenge required\n- `N`: Challenge not required\n**Note** Used by the Hybrid integration.\n" + }, + "decoupledAuthenticationIndicator": { + "type": "string", + "maxLength": 1, + "description": "Indicates whether the 3DS Requestor requests the ACS to utilize Decoupled Authentication and agrees to utilize Decoupled Authentication if the ACS confirms its use.\n\nPossible Values:\n\nY - Decoupled Authentication is supported and preferred if challenge is necessary\n\nN - Do not use Decoupled Authentication\n\n**Default Value**: N\n" + }, + "directoryServerErrorCode": { + "type": "string", + "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" + }, + "directoryServerErrorDescription": { + "type": "string", + "maxLength": 4096, + "description": "Directory server text and additional detail about the error for this transaction.\n" + }, + "ecommerceIndicator": { + "type": "string", + "maxLength": 255, + "description": "Commerce indicator for cards not enrolled. This field contains one of these values:\n- `internet`: Card not enrolled, or card type not supported by payer authentication. No liability shift.\n- `js_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `js_failure`: J/Secure directory service is not available. No liability shift.\n- `spa`: Mastercard card not enrolled in the SecureCode program. No liability shift.\n- `vbv_attempted`: Card not enrolled, but attempt to authenticate is recorded. Liability shift.\n- `vbv_failure`: For payment processor Barclays, Streamline, AIBMS, or FDC Germany, you receive\nthis result if Visa\u2019s directory service is not available. No liability shift.\n" + }, + "eci": { + "type": "string", + "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" + }, + "eciRaw": { + "type": "string", + "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" + }, + "effectiveAuthenticationType": { + "type": "string", + "maxLength": 2, + "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" + }, + "ivr": { + "type": "object", + "properties": { + "enabledMessage": { + "type": "boolean", + "description": "Flag to indicate if a valid IVR transaction was detected.\n" + }, + "encryptionKey": { + "type": "string", + "maxLength": 16, + "description": "Encryption key to be used in the event the ACS requires encryption of the credential field.\n" + }, + "encryptionMandatory": { + "type": "boolean", + "description": "Flag to indicate if the ACS requires the credential to be encrypted.\n" + }, + "encryptionType": { + "type": "string", + "maxLength": 20, + "description": "An indicator from the ACS to inform the type of encryption that should be used in the event the ACS requires encryption of the credential field.\n" + }, + "label": { + "type": "string", + "maxLength": 20, + "description": "An ACS Provided label that can be presented to the Consumer. Recommended use with an application.\n" + }, + "prompt": { + "type": "string", + "maxLength": 80, + "description": "An ACS provided string that can be presented to the Consumer. Recommended use with an application.\n" + }, + "statusMessage": { + "type": "string", + "maxLength": 80, + "description": "An ACS provided message that can provide additional information or details.\n" + } + } + }, + "networkScore": { + "type": "string", + "maxLength": 2, + "description": "The global score calculated by the CB scoring platform and returned to merchants.\n" + }, + "pareq": { + "type": "string", + "description": "Payer authentication request (PAReq) message that you need to forward to the ACS.\nThe value can be very large. The value is in base64.\n" + }, + "paresStatus": { + "type": "string", + "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" + }, + "proofXml": { + "type": "string", + "description": "Date and time of the enrollment check combined with the VEReq and VERes elements. If you ever need\nto show proof of enrollment checking, you may need to parse the string for the information required by the\npayment card company. The value can be very large. For details about possible values, see the `pa_enroll_proofxml` field description in\n[CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n- For cards issued in the U.S. or Canada, Visa may require this data for specific merchant category codes.\n- For cards not issued in the U.S. or Canada, your bank may require this data as proof of enrollment\nchecking for any payer authentication transaction that you re-present because of a chargeback.\n" + }, + "proxyPan": { + "type": "string", + "description": "Encrypted version of the card number used in the payer authentication request message.\n" + }, + "sdkTransactionId": { + "type": "string", + "maxLength": 36, + "description": "SDK unique transaction identifier that is generated on each new transaction.\n" + }, + "signedParesStatusReason": { + "type": "string", + "maxLength": 2, + "description": "Provides additional information as to why the PAResStatus has a specific value.\n" + }, + "specificationVersion": { + "type": "string", + "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" + }, + "stepUpUrl": { + "type": "string", + "maxLength": 2048, + "description": "The fully qualified URL that the merchant uses to post a form to the cardholder in order to complete the Consumer Authentication transaction for the Cardinal Cruise API integration.\n" + }, + "threeDSServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" + }, + "ucafAuthenticationData": { + "type": "string", + "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" + }, + "ucafCollectionIndicator": { + "type": "string", + "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" + }, + "veresEnrolled": { + "type": "string", + "description": "Result of the enrollment check. This field can contain one of these values:\n- `Y`: Card enrolled or can be enrolled; you must authenticate. Liability shift.\n- `N`: Card not enrolled; proceed with authorization. Liability shift.\n- `U`: Unable to authenticate regardless of the reason. No liability shift.\n\n**Note** This field only applies to the Asia, Middle East, and Africa Gateway. If you are configured for\nthis processor, you must send the value of this field in your authorization request.\n\nThe following value can be returned if you are using rules-based Payer Authentication:\n- `B`: Indicates that authentication was bypassed.\n\nFor details, see `pa_enroll_veres_enrolled` field description in [CyberSource Payer Authentication Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n" + }, + "whiteListStatusSource": { + "type": "string", + "maxLength": 2, + "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" + }, + "xid": { + "type": "string", + "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" + }, + "directoryServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status. Possible values are:\n- `INVALID_MERCHANT_CONFIGURATION`\n- `CONSUMER_AUTHENTICATION_REQUIRED`\n- `CONSUMER_AUTHENTICATION_FAILED`\n- `AUTHENTICATION_FAILED`\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" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "riskV1AuthenticationsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status for payerAuthentication 201 enroll and validate calls. Value is:\n- `INVALID_REQUEST`\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible Values:\n- `MISSING_FIELD`\n- `INVALID_DATA`\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value is:\n- Encountered a Payer Authentication problem. Payer could not be authenticated.\n" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "riskV1AuthenticationsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Enroll with Pending Authentication", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "buyerInformation": { + "mobilePhone": "1245789632" + }, + "paymentInformation": { + "card": { + "expirationMonth": "12", + "expirationYear": "2025", + "number": "4000000000000101", + "type": "001" + } + }, + "consumerAuthenticationInformation": { + "transactionMode": "MOTO" + } + } + }, + "example1": { + "summary": "Enroll with Travel Information", + "value": { + "clientReferenceInformation": { + "code": "cybs_test" + }, + "travelInformation": { + "legs": [ + { + "carrierCode": "UA", + "departureDate": "2019-01-01", + "destination": "DEFGH", + "origin": "LAX" + }, + { + "carrierCode": "AS", + "departureDate": "2019-02-21", + "destination": "RESD", + "origin": "ECF" + } + ], + "numberOfPassengers": "2", + "passengers": [ + { + "firstName": "Raj", + "lastName": "Charles" + }, + { + "firstName": "Potter", + "lastName": "Suhember" + } + ] + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "buyerInformation": { + "mobilePhone": "1245789632" + }, + "paymentInformation": { + "card": { + "type": "002", + "expirationMonth": "12", + "expirationYear": "2025", + "number": "5200340000000015" + } + }, + "consumerAuthenticationInformation": { + "transactionMode": "MOTO" + } + } + }, + "example2": { + "summary": "Authentication with NO Redirect", + "value": { + "clientReferenceInformation": { + "code": "cybs_test", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "type": "001", + "expirationMonth": "12", + "expirationYear": "2025", + "number": "4000990000000004" + } + } + } + }, + "example3": { + "summary": "Authentication with New Account", + "value": { + "clientReferenceInformation": { + "code": "New Account" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "type": "001", + "expirationMonth": "12", + "expirationYear": "2025", + "number": "4000990000000004" + } + }, + "consumerAuthenticationInformation": { + "transactionMode": "MOTO" + }, + "riskInformation": { + "buyerHistory": { + "customerAccount": { + "shipAddressUsageDate": "2017-05-06", + "creationHistory": "NEW_ACCOUNT" + }, + "accountHistory": { + "firstUseOfShippingAddress": "false" + } + } + } + } + }, + "example4": { + "summary": "Pending Authentication with Unknown path", + "value": { + "clientReferenceInformation": { + "code": "UNKNOWN" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "paymentInformation": { + "card": { + "type": "001", + "expirationMonth": "12", + "expirationYear": "2025", + "number": "4012001037490014" + } + } + } + }, + "example5": { + "summary": "Enroll with customerId as payment information", + "value": { + "clientReferenceInformation": { + "code": "UNKNOWN" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "paymentInformation": { + "customer": { + "customerId": "9CADDE97CC9254EBE0534136CF0AB358" + } + } + } + }, + "example6": { + "summary": "Enroll with transient token", + "value": { + "clientReferenceInformation": { + "code": "UNKNOWN" + }, + "orderInformation": { + "billTo": { + "firstName": "John", + "lastName": "Doe", + "address2": "Address 2", + "address1": "1 Market St", + "postalCode": "94105", + "locality": "san francisco", + "administrativeArea": "CA", + "country": "US", + "phoneNumber": "4158880000", + "company": "Visa", + "email": "test@cybs.com" + }, + "amountDetails": { + "totalAmount": "10.99", + "currency": "USD" + } + }, + "tokenInformation": { + "transientToken": "1D5ZX4HMOV20FKEBE3IO240JWYJ0NJ90B4V9XQ6SCK4BDN0W96E65E2A39052056" + } + } + } + } + } + }, + "/risk/v1/authentication-results": { + "post": { + "summary": "Validate Authentication Results", + "description": "This call retrieves and validates the authentication results from issuer and allows the merchant to proceed with processing the payment.\n", + "tags": [ + "Payer Authentication" + ], + "operationId": "validateAuthenticationResults", + "x-devcenter-metaData": { + "categoryTag": "Payer_Authentication" + }, + "parameters": [ + { + "name": "validateRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "visaCheckoutId": { + "type": "string", + "maxLength": 48, + "description": "Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in\nthe Visa Checkout **callID** field.\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains `currency` and `totalAmount` for this order.", + "properties": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "required": [ + "unitPrice" + ], + "properties": { + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + } + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "bin": { + "type": "string", + "maxLength": 6, + "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + } + } + }, + "tokenizedCard": { + "type": "object", + "properties": { + "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\nprovided you with information about the token.\n\nPossible value:\n- `2`: Near-field communication (NFC) transaction. The customer\u2019s mobile device provided the token data for a contactless EMV transaction. For recurring\ntransactions, use this value if the original transaction was a contactless EMV transaction.\n\n#### Visa Platform Connect\n- `1`: For Rupay and In App tokenization. Example: InApp apple pay.\n- `3`: Card/Credential On File Tokenization.\n\n**NOTE** No CyberSource through VisaNet acquirers support EMV at this time.\n\nRequired field for PIN debit credit or PIN debit purchase transactions that use payment network tokens; otherwise, not used.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "One of two possible meanings:\n- The two-digit month in which a token expires.\n- The two-digit month in which a card expires.\nFormat: `MM`\nPossible values: `01` through `12`\n\n**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.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_type=039`), if there is no expiration date on the card, use `12`.\\\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Samsung Pay and Apple Pay\nMonth in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\nFor processor-specific information, see the `customer_cc_expmo` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "One of two possible meanings:\n- The four-digit year in which a token expires.\n- The four-digit year in which a card expires.\nFormat: `YYYY`\nPossible values: `1900` through `3000`\nData type: Non-negative integer\n\n**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.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value (1900 through\n3000) 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (`card_ type=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. When you send in 2 digits, they must be the last 2 digits of\nthe year.\n\n#### Samsung Pay and Apple Pay\nYear in which the token expires. CyberSource includes this field in the reply message when it decrypts the payment blob for the tokenized transaction.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction\nyou are requesting.\n\nFor processor-specific information, see the `customer_cc_expyr` or `token_expiration_year` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s payment network token value.\n" + } + } + }, + "fluidData": { + "type": "object", + "properties": { + "value": { + "type": "string", + "maxLength": 3072, + "description": "Represents the encrypted payment data BLOB. The entry for this field is dependent on the payment solution used by the merchant.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits that use a Cybersource suppored Point-to-Point encryption method.\nCard Present processing\nThis field represents the encrypted payment data generated by the payment terminal/device.\n" + }, + "keySerialNumber": { + "type": "string", + "description": "The encoded or encrypted value that a payment solution returns for an authorization request. For details about the valid values for a key, see [Creating an Online Authorization](https://developer.cybersource.com/api/developer-guides/dita-payments/CreatingOnlineAuth.html)\n" + }, + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + }, + "encoding": { + "type": "string", + "maxLength": 6, + "description": "Encoding method used to encrypt the payment data.\nValid values: `Base64`, `HEX`\nIf no value is provided, `Base64` is taken as the default value. And the `Base64` descriptor is used for paymentInformation.fluidData.encoding\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier passed to link the check enrollment\nand validate authentication messages.For Rupay,this is passed only in Re-Send OTP usecase.\n**Note**: Required for Standard integration, Rupay Seamless server to server integration for enroll service.\nRequired for Hybrid integration for validate service.\n" + }, + "authenticationTransactionContext": { + "type": "string", + "maxLength": 256, + "description": "Authentication transaction context is used as a unique identifier to link enroll and validate call.\n" + }, + "otpToken": { + "type": "string", + "maxLength": 255, + "description": "OTP entered by the card holder.\n" + }, + "authenticationType": { + "type": "string", + "maxLength": 2, + "description": "Indicates the type of authentication that will be used to challenge the card holder.\n\nPossible Values:\n\n01 - Static\n\n02 - Dynamic\n\n03 - OOB (Out of Band)\n\n04 - Decoupled\n\n20 - OTP hosted at merchant end. (Rupay S2S flow)\n**NOTE**: EMV 3-D Secure version 2.1.0 supports values 01-03. Version 2.2.0 supports values 01-04. Decoupled authentication is not supported at this time.\n" + }, + "effectiveAuthenticationType": { + "type": "string", + "maxLength": 2, + "description": "This field describes the type of 3DS transaction flow that took place. It can be one of three possible flows;\nCH - Challenge\nFR - Frictionless\nFD - Frictionless with delegation, (challenge not generated by the issuer but by the scheme on behalf of the issuer).\n" + }, + "responseAccessToken": { + "type": "string", + "description": "JWT returned by the 3D Secure provider when the authentication is complete. Required for Hybrid integration if you use the Cybersource-generated access token. Note: Max. length of this field is 2048 characters.\n" + }, + "signedParesStatusReason": { + "type": "string", + "maxLength": 2, + "description": "Provides additional information as to why the PAResStatus has a specific value.\n" + }, + "signedPares": { + "type": "string", + "description": "Payer authentication result (PARes) message returned by the card-issuing bank.\nIf you need to show proof of enrollment checking, you may need to\ndecrypt and parse the string for the information required by the payment card company.\nFor more information, see \"Storing Payer Authentication Data,\" page 160.\nImportant The value is in base64. You must remove all carriage returns and line feeds before\nadding the PARes to the request.\n" + }, + "whiteListStatus": { + "type": "string", + "maxLength": 1, + "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1AuthenticationResultsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "submitTimeLocal": { + "type": "string", + "description": "Time that the transaction was submitted in local time. Generated by Cybersource." + }, + "status": { + "type": "string", + "description": "The status for payerAuthentication 201 enroll and validate calls. Possible values are:\n- `AUTHENTICATION_SUCCESSFUL`\n- `PENDING_AUTHENTICATION`\n- `INVALID_REQUEST`\n- `AUTHENTICATION_FAILED`\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value is:\n- The cardholder is enrolled in Payer Authentication. Please authenticate\nthe cardholder before continuing with the transaction.\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "acsRenderingType": { + "type": "string", + "description": "Identifies the UI Type the ACS will use to complete the challenge. **NOTE**: Only available for App transactions using the Cardinal Mobile SDK.\n" + }, + "acsTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the ACS to identify a single transaction.\n" + }, + "authenticationResult": { + "type": "string", + "description": "Raw authentication data that comes from the cardissuing bank. Primary authentication field that\nindicates if authentication was successful and if liability shift occurred. You should examine first the\nresult of this field. This field contains one of these values:\n- `-1`: Invalid PARes.\n- `0`: Successful validation.\n- `1`: Cardholder is not participating, but the attempt to authenticate was recorded.\n- `6`: Issuer unable to perform authentication.\n- `9`: Cardholder did not complete authentication.\n" + }, + "authenticationStatusMsg": { + "type": "string", + "description": "Message that explains the authenticationResult reply field.\n" + }, + "authenticationTransactionId": { + "type": "string", + "maxLength": 26, + "description": "Payer authentication transaction identifier is used to link the check\nenrollment and validate authentication messages. For Rupay, this field should be passed as request only for Resend OTP use case.\n" + }, + "authenticationTransactionContextId": { + "type": "string", + "maxLength": 30, + "description": "Payer authentication transaction identifier passed to link the validation and authorization calls.\n" + }, + "transactionToken": { + "type": "string", + "maxLength": 256, + "description": "Web based token used to authenticate consumer with Rupay authentication provider.\n" + }, + "authorizationPayload": { + "type": "string", + "description": "The Base64 encoded JSON Payload of CB specific Authorization Values returned in the challenge Flow\n" + }, + "cavv": { + "type": "string", + "maxLength": 255, + "description": "Unique identifier generated by the card-issuing bank for Visa, American Express, JCB, Diners Club, and\nDiscover transactions after the customer is authenticated. The value is in base64. When you\nrequest the card authorization service, CyberSource automatically converts the value, not the field name,\nto the format required by your payment processor.\n" + }, + "cavvAlgorithm": { + "type": "string", + "maxLength": 1, + "description": "Field that is returned only when the CAVV is generated, which occurs when paresStatus\ncontains the values Y (successful authentication) or A (attempted authentication). If\nyou use the ATOS processor, send the value of this field in the `cavv_algorithm` request field of the\nauthorization service. This field contains one of these values:\n- `2`: Visa, American Express, JCB, Diners Club, and Discover\n- `3`: Mastercard\n" + }, + "directoryServerErrorCode": { + "type": "string", + "description": "The directory server error code indicating a problem with this transaction. Note - Max Length of this field is typically 3 characters.\n" + }, + "directoryServerErrorDescription": { + "type": "string", + "maxLength": 4096, + "description": "Directory server text and additional detail about the error for this transaction.\n" + }, + "indicator": { + "type": "string", + "description": "Indicator used to differentiate Internet transactions from other types. The authentication failed if this field\nis not returned. For Visa, if your payment processor is Streamline, Barclays, AIBMS, or FDC Germany,\nyou receive the value vbv_failure instead of internet when eci is 07.\nThe value of this field is passed automatically to the authorization service if you request the services\ntogether. This field contains one of these values:\n- `aesk`: American Express SafeKey authentication verified successfully.\n- `aesk_attempted`: Card not enrolled in American Express SafeKey, but the attempt to authenticate was recorded.\n- `dipb`: Discover ProtectBuy authentication verified successfully.\n- `dipb_attempted`: Card not enrolled in Discover ProtectBuy, but the attempt to authenticate was recorded.\n- `internet`: Authentication was not verified successfully.\n- `js`: J/Secure authentication verified successfully.\n- `js_attempted`: Card not enrolled in J/Secure, but the attempt to authenticate was recorded.\n- `moto`: Mail or telephone order.\n- `pb_attempted`: Card not enrolled in Diners Club ProtectBuy, but the attempt to authenticate was recorded.\n- `recurring`: Recurring transaction.\n- `spa`: Mastercard Identity Check authentication verified successfully.\n- `spa_failure`: Mastercard Identity Check failed authentication.\n- `vbv`: Visa Secure authentication verified successfully.\n- `vbv_attempted`: Card not enrolled in Visa Secure, but the attempt to authenticate was recorded.\n- `vbv_failure`: Visa Secure authentication unavailable.\n" + }, + "interactionCounter": { + "type": "string", + "maxLength": 2, + "description": "Indicates the number of authentication cycles attempted by the cardholder and is tracked by the Issuing Banks ACS.Example: if customer gets the challenge window and enter in their one time password and hit submit then that interaction counter should just be 1.\nWhen customer gets the challenge window and the bank asks if they want to have the one time password sent to their phone or their email and they have to choose before going to the next screen to enter in their one time password then this interaction count would be 2.\nOne for the selection of how they want the one time password delivered and another with them actually entering in the one time password and hitting the submit button.\n" + }, + "eci": { + "type": "string", + "description": "Note This field applies only to non-U.S-issued cards.\n\nFor enroll, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions when the card is not enrolled. For more information, see\n\"Interpreting the Reply,\" page 22.\n\nIf you are not using the CyberSource payment services, you must send this value to your payment\nprocessor in the subsequent request for card authorization. This field contains one of these values:\n- `06`: The card can be enrolled. Liability shift.\n- `07`: The card cannot be enrolled. No liability shift.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Visa, American Express, JCB,\nDiners Club, and Discover transactions. The field is absent when authentication fails.\nYou must send this value to your payment processor in the subsequent request for card authorization.\nThis field contains one of these values:\n- `05`: Successful authentication\n- `06`: Authentication attempted\n- `07`: Failed authentication (No response from the merchant because of a problem.)\n" + }, + "eciRaw": { + "type": "string", + "description": "ECI value that can be returned for Visa, Mastercard, American Express, JCB, Diners Club, and Discover.\nThe field is absent when authentication fails. If your payment processor is Streamline, you must pass the\nvalue of this field instead of the value of `eci` or `ucafCollectionIndicator`.\n\nThis field can contain one of these values:\n- `01`: Authentication attempted (Mastercard)\n- `02`: Successful authentication (Mastercard)\n- `05`: Successful authentication (Visa, American Express, JCB, Diners Club, and Discover)\n- `06`: Authentication attempted (Visa, American Express, JCB, Diners Club, and Discover)\n" + }, + "paresStatus": { + "type": "string", + "description": "Raw result of the authentication check. If you are configured for Asia, Middle East, and Africa Gateway\nProcessing, you need to send the value of this field in your authorization request. This field can contain\none of these values:\n- `A`: Proof of authentication attempt was generated.\n- `N`: Customer failed or canceled authentication. Transaction denied.\n- `U`: Authentication not completed regardless of the reason.\n- `Y`: Customer was successfully authenticated.\n" + }, + "sdkTransactionId": { + "type": "string", + "maxLength": 36, + "description": "SDK unique transaction identifier that is generated on each new transaction.\n" + }, + "specificationVersion": { + "type": "string", + "description": "This field contains the 3D Secure version that was used to process the transaction. For example, 1.0.2 or 2.0.0.\n" + }, + "threeDSServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "Unique transaction identifier assigned by the 3DS Server to identify a single transaction.\n" + }, + "ucafAuthenticationData": { + "type": "string", + "description": "AAV is a unique identifier generated by the card-issuing bank for Mastercard Identity Check\ntransactions after the customer is authenticated. The value is in base64.\nInclude the data in the card authorization request.\n" + }, + "ucafCollectionIndicator": { + "type": "string", + "description": "For enroll, Returned only for Mastercard transactions. Indicates that authentication is not required because the\ncustomer is not enrolled. Add the value of this field to the authorization field ucaf_collection_indicator.\nThis field can contain these values: 0, 1.\n\nFor validate, Numeric electronic commerce indicator (ECI) returned only for Mastercard Identity Check\ntransactions. The field is absent when authentication fails. You must send this value to your payment\nprocessor in the request for card authorization. This field contain one of these values:\n- `0`: Authentication data not collected, and customer authentication was not completed.\n- `1`: Authentication data not collected because customer authentication was not completed.\n- `2`: Authentication data collected because customer completed authentication.\n" + }, + "whiteListStatus": { + "type": "string", + "maxLength": 1, + "description": "Enables the communication of trusted beneficiary/whitelist status between the ACS, the DS and the 3DS Requestor.\n\nPossible Values:\n\nY - 3DS Requestor is whitelisted by cardholder\n\nN - 3DS Requestor is not whitelisted by cardholder\n" + }, + "whiteListStatusSource": { + "type": "string", + "maxLength": 2, + "description": "This data element will be populated by the system setting Whitelist Status. Possible Values: 01 - 3DS/ Server/ 02 \u2013 DS/03 - ACS\n" + }, + "xid": { + "type": "string", + "description": "Transaction identifier generated by CyberSource for successful enrollment or validation checks.\nUse this value, which is in base64, to match an outgoing PAReq with an incoming PARes.\nCyberSource forwards the XID with the card authorization service to these payment processors in these cases:\n- Barclays\n- Streamline (when the **ecommerceIndicator**`=spa`)\n" + }, + "directoryServerTransactionId": { + "type": "string", + "maxLength": 36, + "description": "The Directory Server Transaction ID is generated by the Mastercard Directory Server during the authentication transaction and passed back to the merchant with the authentication results.\nFor Cybersource Through Visanet Gateway:\nThe value for this field corresponds to the following data in the TC 33 capture file3: Record: CP01 TCR7, Position: 114-149, Field: MC AVV Verification\u2014Directory Server Transaction ID\n" + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status. Possible values are:\n- `INVALID_MERCHANT_CONFIGURATION`\n- `CONSUMER_AUTHENTICATION_REQUIRED`\n- `CONSUMER_AUTHENTICATION_FAILED`\n- `AUTHENTICATION_FAILED`\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" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "riskV1AuthenticationResultsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status for payerAuthentication 201 enroll and validate calls. Value is:\n- `INVALID_REQUEST`\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible Values:\n- `MISSING_FIELD`\n- `INVALID_DATA`\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value is:\n- Encountered a Payer Authentication problem. Payer could not be authenticated.\n" + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "riskV1AuthenticationResultsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Validate authentication results", + "value": { + "clientReferenceInformation": { + "code": "pavalidatecheck", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "orderInformation": { + "amountDetails": { + "currency": "USD", + "totalAmount": "200.00" + }, + "lineItems": [ + { + "unitPrice": "10", + "quantity": "2", + "taxAmount": "32.40", + "passenger": { + "firstName": "John", + "lastName": "Doe" + } + } + ] + }, + "paymentInformation": { + "card": { + "type": "002", + "expirationMonth": "12", + "expirationYear": "2025", + "number": "5200000000000007" + } + }, + "consumerAuthenticationInformation": { + "authenticationTransactionId": "PYffv9G3sa1e0CQr5fV0" + } + } + } + } + } + }, + "/risk/v1/lists/{type}/entries": { + "post": { + "summary": "List Management", + "description": "This call adds/deletes/converts the request information in the negative list.\n\nProvide the list to be updated as the path parameter. This value can be 'postiive', 'negative' or 'review'.\n", + "operationId": "addNegative", + "tags": [ + "Decision Manager" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "x-devcenter-metaData": { + "categoryTag": "Risk_Management" + }, + "parameters": [ + { + "name": "type", + "in": "path", + "required": true, + "type": "string", + "description": "The list to be updated. It can be 'positive', 'negative' or 'review'." + }, + { + "name": "addNegativeListRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "orderInformation": { + "type": "object", + "properties": { + "address": { + "type": "object", + "description": "Contains address information related to the order", + "properties": { + "address1": { + "type": "string", + "description": "First line of the street address", + "maxLength": 60 + }, + "address2": { + "type": "string", + "description": "Second line of the street address", + "maxLength": 60 + }, + "locality": { + "type": "string", + "description": "City of the street address.\nRequired when adding the address to a list.\n", + "maxLength": 50 + }, + "country": { + "type": "string", + "description": "Country of the street address. Use the two-character codes located in the Support Center.\nRequired if address1 is present.\n", + "maxLength": 2 + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State, province, or territory of the street address. Use the two-character codes located in the Support Center." + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code of the street address. Required when adding the address to a list." + } + } + }, + "billTo": { + "type": "object", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "emailDomain": { + "type": "string", + "maxLength": 100, + "description": "Email domain of the customer. The domain of the email address comprises all characters that follow the @ symbol, such as mail.example.com. For the Risk Update service, if the email address and the domain are sent in the request, the domain supersedes the email address.\n" + } + } + }, + "shipTo": { + "type": "object", + "description": "Contains recipient shipping information.", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "description": "This array contains detailed information about individual products in the order.", + "items": { + "type": "object", + "properties": { + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "description": "Contains the payment data for updating in List Management.", + "properties": { + "card": { + "type": "object", + "properties": { + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "bin": { + "type": "string", + "maxLength": 6, + "description": "description: The BIN is the first six digits of the card's Primary Account Number (PAN).\n" + } + } + }, + "bank": { + "type": "object", + "description": "Customer's bank account details", + "properties": { + "accountNumber": { + "type": "string", + "description": "Customer's bank account number. You can use this field only when scoring a direct debit transaction. Use this field if you do not or are not allowed to provide the IBAN. Note Do not use the IBAN in this field. Use nly the\ntraditional account number information. For the IBAN, use bank_iban.\n", + "maxLength": 30 + }, + "code": { + "type": "string", + "description": "Country-specific code used to identify the customer\u2019s bank. Required for some countries if you do not or are not allowed to provide the IBAN instead. You can use this field only when scoring a direct debit transaction. For specific requirements, see \"Required Bank Account Information by Country,\"\n", + "maxLength": 15 + }, + "country": { + "type": "string", + "description": "Country where the bank is located. Use the two-character ISO codes. You can use this field only when scoring a direct debit transaction.\n", + "maxLength": 2 + }, + "iban": { + "type": "string", + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\nFor specific requirements, see \"Required Bank Account Information by Country,\"\n", + "maxLength": 30 + } + } + } + } + }, + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "networkIpAddress": { + "type": "string", + "maxLength": 11, + "description": "Network IP address of the customer (for example, 10.1.27). A network IP address includes up to 256 IP addresses.\n" + } + } + }, + "riskInformation": { + "type": "object", + "properties": { + "markingDetails": { + "type": "object", + "description": "Details for marking the transaction as either positive or negative.", + "properties": { + "notes": { + "type": "string", + "description": "Notes or details that explain the reasons for adding the transaction to either the positive or negative list.", + "maxLength": 120 + }, + "reason": { + "type": "string", + "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- `fraud_chargeback:` You have received a fraud-related chargeback for the transaction.\n- `non_fraud_chargeback:` You have received a non-fraudulent chargeback for the transaction.\n- `suspected:` You believe that you will probably receive a chargeback for the transaction.\n- `creditback:` You issued a refund to the customer to avoid a chargeback for the transaction.\n", + "maxLength": 25 + }, + "recordName": { + "type": "string", + "description": "Name of the customer\u2019s record entered in the list.\nFor the positive list, it is required if `action_\ncode`=`add_positive`. If absent from the request, `ics_risk_update` creates the value for this field by concatenating the customer\u2019s first and last names.\nFor the negative and the review lists, `record_name`, `customer_firstname`, and `customer_lastname` are optional.\n", + "maxLength": 255 + }, + "action": { + "type": "string", + "description": "Indicates whether to add to or remove a customer\u2019s identity from the negative or positive list. This field can\ncontain one of the following values:\n- add: Add information to the list.\n- convert: moves the data.\n- delete: deletes the data from the list.\n" + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "description": "Contains information about the buyer.", + "properties": { + "personalIdentification": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of the identification.\n\nPossible values:\n - `NATIONAL`\n - `CPF`\n - `CPNJ`\n - `CURP`\n - `SSN`\n - `DRIVER_LICENSE`\n - `PASSPORT_NUMBER`\n - `PERSONAL_ID`\n - `TAX_ID`\n\nThis field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "The value of the identification type. This field is supported only on the following processors.\n\n#### ComercioLatino\nSet this field to the Cadastro de Pessoas Fisicas (CPF).\n\n#### CyberSource Latin American Processing\nSupported for Redecard in Brazil. Set this field to the Cadastro de Pessoas Fisicas (CPF), which is required for AVS for Redecard in Brazil.\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\nFor processor-specific information, see the `personal_id` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n \nIf `type = PASSPORT`, this is the cardholder's passport number.\nRecommended for Discover ProtectBuy.\n" + }, + "issuedBy": { + "type": "string", + "description": "The government agency that issued the driver's license or passport.\n\nIf **type**` = DRIVER_LICENSE`, this is the State or province where the customer\u2019s driver\u2019s license was issued.\n\nIf **type**` = PASSPORT`, this is the Issuing country for the cardholder\u2019s passport. Recommended for Discover ProtectBuy.\n\nUse the two-character [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n#### TeleCheck\nContact your TeleCheck representative to find out whether this field is required or optional.\n\n#### All Other Processors\nNot used.\n\nFor details about the country that issued the passport, see `customer_passport_country` field description in [CyberSource Payer Authentication Using the SCMP API]\n(https://apps.cybersource.com/library/documentation/dev_guides/Payer_Authentication_SCMP_API/html/)\n\nFor details about the state or province that issued the passport, see `driver_license_state` field description in [Electronic Check Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "verificationResults": { + "type": "string", + "description": "Verification results received from Issuer or Card Network for verification transactions. Response Only Field.\n" + } + } + } + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1UpdatePost201Response", + "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." + } + } + } + } + }, + "clientReferenceInformaton": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "status": { + "type": "string", + "description": "The status for risk update 201 calls. Possible values are:\n- INVALID_REQUEST\n- COMPLETED\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "riskV1DecisionsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "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" + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Add Data to a List", + "value": { + "orderInformation": { + "address": { + "address1": "1234 Sample St.", + "address2": "Mountain View", + "locality": "California", + "country": "US", + "administrativeArea": "CA", + "postalCode": "94043" + }, + "billTo": { + "email": "test@example.com", + "firstName": "John", + "lastName": "Doe" + } + }, + "paymentInformation": { + "number": "4111111111111111" + }, + "clientReferenceInformation": { + "code": "54323007", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "riskInformation": { + "markingDetails": { + "action": "add" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "54323007", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "id": "5526663169230178269497", + "status": "COMPLETED", + "submitTimeUTC": "2020-01-20T09:23:15Z" + } + }, + "example1": { + "summary": "Add Duplicate Information", + "value": { + "orderInformation": { + "address": { + "address1": "1234 Sample St.", + "address2": "Mountain View", + "locality": "California", + "country": "US", + "administrativeArea": "CA", + "postalCode": "94043" + }, + "billTo": { + "email": "nobody@example.com", + "firstName": "John", + "lastName": "Doe" + } + }, + "paymentInformation": { + "number": "4111111111111111" + }, + "clientReferenceInformation": { + "code": "54323007" + }, + "riskInformation": { + "markingDetails": { + "action": "add" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "54323007" + }, + "id": "5526663169230178269497", + "status": "COMPLETED", + "submitTimeUTC": "2020-01-20T09:23:15Z" + } + } + } + } + }, + "/risk/v1/decisions/{id}/marking": { + "post": { + "summary": "Fraud Marking", + "description": "This can be used to -\n1. Add known fraudulent data to the fraud history\n2. Remove data added to history with Transaction Marking Tool or by uploading chargeback files\n3. Remove chargeback data from history that was automatically added.\nFor detailed information, contact your Cybersource representative\n\nPlace the request ID of the transaction you want to mark as suspect (or remove from history) as the path parameter in this request.\n", + "operationId": "fraudUpdate", + "tags": [ + "Decision Manager" + ], + "x-devcenter-metaData": { + "categoryTag": "Risk_Management" + }, + "parameters": [ + { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "Request ID of the transaction that you want to mark as suspect or remove from history." + }, + { + "name": "fraudMarkingActionRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "required": [ + "riskInformation" + ], + "properties": { + "riskInformation": { + "type": "object", + "properties": { + "markingDetails": { + "type": "object", + "description": "Details for marking the transaction.", + "properties": { + "notes": { + "type": "string", + "description": "Notes or details that explain the reasons for marking the transaction as suspect or otherwise.", + "maxLength": 120 + }, + "reason": { + "type": "string", + "description": "Reason for marking the transaction as suspect or otherwise. This field can contain one of the following values:\n- `fraud_chargeback:` You have received a fraud-related chargeback for the transaction.\n- `non_fraud_chargeback:` You have received a non-fraudulent chargeback for the transaction.\n- `suspected:` You believe that you will probably receive a chargeback for the transaction.\n- `creditback:` You issued a refund to the customer to avoid a chargeback for the transaction.\n", + "maxLength": 25 + }, + "fieldsIncluded": { + "type": "array", + "description": "This field can contain one or more of the following values. When you specify more than one value, separate them with commas (,).\n- `account_key_hash`\n- `customer_account_id`\n- `customer_email`\n- `customer_ipaddress`\n- `customer_phone`\n- `device_fingerprint`\n- `ship_address`\nIf no value is specified, `account_key_hash`, `customer_email`, and `ship_address` are used by default.\nNote `account_key_hash` adds the field that contains the card number (`customer_cc_number`).\n", + "items": { + "type": "string" + } + }, + "action": { + "type": "string", + "description": "This field can contain one of the following values:\n- add: Mark as Suspect.\n- clear: Clear Mark as Suspect.\n- hide: Remove from history.\n" + } + } + } + } + }, + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1UpdatePost201Response", + "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." + } + } + } + } + }, + "clientReferenceInformaton": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "status": { + "type": "string", + "description": "The status for risk update 201 calls. Possible values are:\n- INVALID_REQUEST\n- COMPLETED\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "riskV1DecisionsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "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" + } + } + } + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Mark as Suspect", + "value": { + "riskInformation": { + "markingDetails": { + "notes": "Adding this transaction as suspect", + "action": "add", + "reason": "suspected", + "fieldsIncluded": [ + "customer_email", + "customer_phone" + ] + } + }, + "clientReferenceInformation": { + "code": 12345, + "partner": { + "developerId": 1234, + "solutionId": 3321 + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": 12345, + "partner": { + "developerId": 1234, + "solutionId": 3321 + } + }, + "id": 2.719725130000168e+21, + "status": "COMPLETED", + "submitTimeUTC": "2020-01-20T09:23:15.000Z" + } + }, + "example1": { + "summary": "Remove from History", + "value": { + "riskInformation": { + "markingDetails": { + "notes": "Adding this transaction as suspect", + "action": "hide", + "reason": "suspected" + } + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": 12345 + }, + "id": 2.719725130000168e+21, + "status": "COMPLETED", + "submitTimeUTC": "2020-01-20T09:23:15.000Z" + } + } + } + } + }, + "/risk/v1/address-verifications": { + "post": { + "summary": "Verify customer address", + "description": "This call verifies that the customer address submitted is valid.", + "operationId": "verifyCustomerAddress", + "tags": [ + "Verification" + ], + "x-devcenter-metaData": { + "categoryTag": "Risk_Management" + }, + "parameters": [ + { + "name": "verifyCustomerAddressRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "billTo": { + "type": "object", + "required": [ + "address1", + "locality", + "country", + "postalCode" + ], + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "address3": { + "type": "string", + "maxLength": 60, + "description": "Additional address information (third line of the billing address)\n" + }, + "address4": { + "type": "string", + "maxLength": 60, + "description": "Additional address information (fourth line of the billing address)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + } + } + }, + "shipTo": { + "type": "object", + "required": [ + "address1", + "country" + ], + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address3": { + "type": "string", + "maxLength": 60, + "description": "Third line of the shipping address.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address4": { + "type": "string", + "maxLength": 60, + "description": "Fourth line of the shipping address." + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "required": [ + "unitPrice" + ], + "properties": { + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSKU": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productRisk": { + "type": "string", + "maxLength": 6, + "description": "Indicates the level of risk for the product. This field can contain one of the following values:\n- `low`: The product is associated with few chargebacks.\n- `normal`: The product is associated with a normal number of chargebacks.\n- `high`: The product is associated with many chargebacks.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + } + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Optional customer\u2019s account ID, tracking number, reward number, or other unique number\nthat you assign to the customer for the purpose that you choose\n" + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1AddressVerificationsPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "submitTimeLocal": { + "type": "string", + "description": "Time that the transaction was submitted in local time. Generated by Cybersource." + }, + "status": { + "type": "string", + "description": "The status for the call can be:\n- COMPLETED\n- INVALID_REQUEST\n- DECLINED\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value can be\n - Apartment number missing or not found.\n - Insufficient address information.\n - House/Box number not found on street.\n - Multiple address matches were found.\n - P.O. Box identifier not found or out of range.\n - Route service identifier not found or out of range.\n - Street name not found in Postal code.\n - Postal code not found in database.\n - Unable to verify or correct address.\n - Multiple addres matches were found (international)\n - Address match not found (no reason given)\n - Unsupported character set\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "addressVerificationInformation": { + "type": "object", + "properties": { + "addressType": { + "type": "string", + "maxLength": 255, + "description": "Contains the record type of the postal code with which the address was matched.\n\n#### U.S. Addresses\nDepending on the quantity and quality of the address information provided,\nthis field contains one or two characters:\n\n- One character: sufficient correct information was provided to result in accurate matching.\n- Two characters: standardization would provide a better address if more or better\ninput address information were available. The second character is D (default).\n\nBlank fields are unassigned. When an address cannot be standardized, how the input\ndata was parsed determines the address type. In this case, standardization may indicate a street, rural route,\nhighway contract, general delivery, or PO box. For possible values, see the description for the `dav_address_type` reply field in [CyberSource Verification Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/)\n\n#### All Other Countries\nThis field contains one of the following values:\n- P: Post.\n- S: Street.\n- x: Unknown.\n" + }, + "barCode": { + "type": "object", + "properties": { + "value": { + "type": "string", + "maxLength": 255, + "description": "Delivery point bar code determined from the input address." + }, + "checkDigit": { + "type": "number", + "maxLength": 1, + "description": "Check digit for the 11-digit delivery point bar code." + } + } + }, + "applicableRegion": { + "type": "string", + "maxLength": 255, + "description": "Value can be\n- Canada\n- US\n- International\nThe values of errorCode and statusCode mean different things depending on the applicable region.\nRefer to the guide for more info.\n" + }, + "errorCode": { + "type": "string", + "maxLength": 255, + "description": "Four-character error code returned for Canadian, US and international addresses.\nFor possible values, see Verification Services guide.\nThe meaning of the errorCode depends on value of applicableRegion.\n" + }, + "statusCode": { + "type": "string", + "maxLength": 255, + "description": "Four-to-ten character status code returned for Canadian, US and international addresses.\nFor possible values, see Verification Services guide.\nThe meaning of the errorCode depends on value of applicableRegion.\n" + }, + "careOf": { + "type": "string", + "maxLength": 255, + "description": "Care of data dropped from the standard address." + }, + "matchScore": { + "type": "integer", + "maxLength": 1, + "description": "Indicates the probable correctness of the address match. Returned for U.S. and Canadian addresses.\nReturns a value from 0-9, where 0 is most likely to be correct and 9 is least\nlikely to be correct, or -1 if there is no address match.\n" + }, + "standardAddress": { + "type": "object", + "properties": { + "address1": { + "type": "object", + "properties": { + "withApartment": { + "type": "string", + "maxLength": 255, + "description": "First line of the standardized address, including apartment information." + }, + "withoutApartment": { + "type": "string", + "maxLength": 255, + "description": "First line of the standardized address, without apartment information.\nReturned for U.S. and Canadian addresses.\n" + } + } + }, + "address2": { + "type": "string", + "maxLength": 255, + "description": "Second line of the standardized address." + }, + "address3": { + "type": "string", + "maxLength": 255, + "description": "Third line of the standardized address." + }, + "address4": { + "type": "string", + "maxLength": 255, + "description": "Fourth line of the standardized address." + }, + "locality": { + "type": "string", + "maxLength": 255, + "description": "Standardized city name." + }, + "county": { + "type": "string", + "maxLength": 255, + "description": "U.S. county if available." + }, + "country": { + "type": "string", + "maxLength": 255, + "description": "Standardized country name." + }, + "csz": { + "type": "string", + "maxLength": 255, + "description": "Standardized city, state or province, and ZIP +4 code or postal code line." + }, + "isoCountry": { + "type": "string", + "maxLength": 255, + "description": "Standardized two-character ISO country code." + }, + "administrativeArea": { + "type": "string", + "maxLength": 255, + "description": "U.S.P.S. standardized state or province abbreviation." + }, + "postalCode": { + "type": "string", + "maxLength": 255, + "description": "Standardized U.S. ZIP + 4 postal code." + } + } + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status. Value can be\n - `APARTMENT_NUMBER_NOT_FOUND`\n - `INSUFFICIENT_ADDRESS_INFORMATION`\n - `HOUSE_OR_BOX_NUMBER_NOT_FOUND`\n - `MULTIPLE_ADDRESS_MATCHES`\n - `BOX_NUMBER_NOT_FOUND`\n - `ROUTE_SERVICE_NOT_FOUND`\n - `STREET_NAME_NOT_FOUND`\n - `POSTAL_CODE_NOT_FOUND`\n - `UNVERIFIABLE_ADDRESS`\n - `MULTIPLE_ADDRESS_MATCHES_INTERNATIONAL`\n - `ADDRESS_MATCH_NOT_FOUND`\n - `UNSUPPORTED_CHARACTER_SET`\n - `INVALID_MERCHANT_CONFIGURATION`\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" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "riskV1AddressVerificationsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "riskV1AddressVerificationsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Verbose Request with all fields", + "value": { + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-All fields", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "orderInformation": { + "billTo": { + "address1": "12301 research st", + "address2": "1", + "address3": "2", + "address4": "3", + "locality": "Austin", + "country": "US", + "administrativeArea": "TX", + "postalCode": "78759" + }, + "shipTo": { + "address1": "1715 oaks apt # 7", + "address2": " ", + "address3": "", + "address4": "", + "locality": "SUPERIOR", + "country": "US", + "administrativeArea": "WI", + "postalCode": "29681" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "9966223", + "productCode": "electronic", + "productName": "headset", + "quantity": "3", + "passenger": { + "firstname": "ABCD", + "lastname": "DEF" + } + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "ABCD" + } + }, + "responseValue": { + "addressVerificationInformation": { + "matchScore": "0", + "standardAddress": { + "country": "US", + "address1": { + "withoutApartment": "1715 Oakes Ave", + "withApartment": "1715 Oakes Ave Apt 7" + }, + "postalCode": "54880-2466", + "county": "Douglas", + "locality": "Superior", + "csz": "Superior WI 54880-2466", + "administrativeArea": "WI", + "isoCountry": "US" + }, + "addressType": "H", + "barCode": { + "checkDigit": "0", + "value": "246607" + }, + "statusCode": "S99000" + }, + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-All fields", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "id": "5574744400096019003092", + "status": "COMPLETED", + "submitTimeUtc": "2019-05-10T07:47:20Z" + } + }, + "example1": { + "summary": "Shipping Details not US or Canada", + "value": { + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-All fields" + }, + "orderInformation": { + "billTo": { + "address1": "12301 research st", + "address2": "1", + "address3": "2", + "address4": "3", + "locality": "Austin", + "country": "US", + "administrativeArea": "TX", + "postalCode": "78759" + }, + "shipTo": { + "address1": "4R.ILHA TERCEIRA,232-R/C-ESQ", + "address2": " ", + "address3": "", + "address4": "", + "locality": "Carcavelos", + "country": "PT", + "administrativeArea": "WI", + "postalCode": "29681" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "9966223", + "productCode": "electronic", + "productName": "headset", + "quantity": "3", + "passenger": { + "firstname": "ABCD", + "lastname": "DEF" + } + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "ABCD" + } + }, + "responseValue": { + "addressVerificationInformation": { + "matchScore": "6", + "standardAddress": { + "country": "Portugal", + "address2": "C Esq - R", + "address1": { + "withApartment": "R Ilha Terceira 232 - C Esq - R" + }, + "postalCode": "2775-796", + "locality": "Carcavelos", + "administrativeArea": "Lisboa", + "isoCountry": "PT" + }, + "addressType": "S", + "statusCode": "SE600" + }, + "clientReferenceInformation": { + "code": "addressEg" + }, + "id": "5574744458726021803092", + "status": "COMPLETED", + "submitTimeUtc": "2019-05-10T07:47:26Z" + } + }, + "example2": { + "summary": "Canadian Billing Details", + "value": { + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-All fields" + }, + "orderInformation": { + "billTo": { + "address1": "1650 Burton Ave", + "address2": "", + "address3": "", + "address4": "", + "locality": "VICTORIA", + "country": "CA", + "administrativeArea": "BC", + "postalCode": "V8T 2N6" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "9966223", + "productCode": "electronic", + "productName": "headset", + "quantity": "3", + "passenger": { + "firstname": "ABCD", + "lastname": "DEF" + } + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "ABCD" + } + }, + "responseValue": { + "addressVerificationInformation": { + "matchScore": "0", + "standardAddress": { + "country": "CA", + "address1": { + "withoutApartment": "1650 Burton Ave", + "withApartment": "1650 Burton Ave" + }, + "postalCode": "V8T2N6", + "locality": "Victoria", + "csz": "Victoria BC V8T 2N6", + "administrativeArea": "BC", + "isoCountry": "CA" + }, + "addressType": "S", + "statusCode": "S0000" + }, + "clientReferenceInformation": { + "code": "addressEg" + }, + "id": "5574744407796019403092", + "status": "COMPLETED", + "submitTimeUtc": "2019-05-10T07:47:20Z" + } + }, + "example3": { + "summary": "Multiple Line Items", + "value": { + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-All fields" + }, + "orderInformation": { + "billTo": { + "address1": "12301 research st", + "address2": "1", + "address3": "2", + "address4": "3", + "locality": "Austin", + "country": "US", + "administrativeArea": "TX", + "postalCode": "78759" + }, + "shipTo": { + "address1": "PO Box 9088", + "address2": "", + "address3": "", + "address4": "", + "locality": "San Jose", + "country": "US", + "administrativeArea": "CA", + "postalCode": "95132" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "9966223", + "productCode": "electronix", + "productName": "headset", + "quantity": "3" + }, + { + "unitPrice": "10.50", + "productSKU": "9966226", + "productCode": "electronic", + "productName": "wwrdf", + "quantity": "2" + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "QWERTY" + } + }, + "responseValue": { + "addressVerificationInformation": { + "matchScore": "0", + "standardAddress": { + "country": "US", + "address1": { + "withoutApartment": "PO Box 9088", + "withApartment": "PO Box 9088" + }, + "postalCode": "95157-0088", + "county": "Santa Clara", + "locality": "San Jose", + "csz": "San Jose CA 95157-0088", + "administrativeArea": "CA", + "isoCountry": "US" + }, + "addressType": "P", + "barCode": { + "checkDigit": "1", + "value": "008888" + }, + "statusCode": "S90000" + }, + "clientReferenceInformation": { + "code": "addressEg" + }, + "id": "5574744469676022203092", + "status": "COMPLETED", + "submitTimeUtc": "2019-05-10T07:47:27Z" + } + }, + "example4": { + "summary": "Apartment Number Missing or Not Found", + "value": { + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-error response check" + }, + "orderInformation": { + "billTo": { + "address1": "6th 4th ave", + "address2": "", + "locality": "rensslaer", + "country": "US", + "administrativeArea": "NY", + "postalCode": "12144" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "996633", + "productCode": "handling", + "productName": "qwerty", + "quantity": "3" + } + ] + } + }, + "responseValue": { + "addressVerificationInformation": { + "errorCode": "E420", + "statusCode": "S20000" + }, + "clientReferenceInformation": { + "code": "addressEg" + }, + "errorInformation": { + "reason": "APARTMENT_NUMBER_NOT_FOUND", + "message": "Apartment number missing or not found." + }, + "id": "5574744502546023003092", + "status": "DECLINED", + "submitTimeUtc": "2019-05-10T07:47:30Z" + } + }, + "example5": { + "summary": "Address Match Not Found", + "value": { + "clientReferenceInformation": { + "code": "addressEg", + "comments": "dav-error response check" + }, + "orderInformation": { + "billTo": { + "address1": "Apt C ", + "address2": "", + "locality": "Glendale", + "country": "US", + "administrativeArea": "CA", + "postalCode": "91204" + } + } + }, + "responseValue": { + "addressVerificationInformation": { + "errorCode": "E302", + "statusCode": "S00000" + }, + "clientReferenceInformation": { + "code": "addressEg" + }, + "errorInformation": { + "reason": "ADDRESS_MATCH_NOT_FOUND", + "message": "Address match not found." + }, + "id": "5574744508936023403092", + "status": "DECLINED", + "submitTimeUtc": "2019-05-10T07:47:31Z" + } + } + } + } + }, + "/risk/v1/export-compliance-inquiries": { + "post": { + "summary": "Validate export compliance", + "description": "This call checks customer data against specified watch lists to ensure export compliance.\n", + "operationId": "validateExportCompliance", + "tags": [ + "Verification" + ], + "x-devcenter-metaData": { + "categoryTag": "Risk_Management" + }, + "parameters": [ + { + "name": "validateExportComplianceRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "required": [ + "code" + ], + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "billTo": { + "type": "object", + "required": [ + "address1", + "locality", + "country", + "postalCode", + "email" + ], + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "address3": { + "type": "string", + "maxLength": 60, + "description": "Additional address information (third line of the billing address)\n" + }, + "address4": { + "type": "string", + "maxLength": 60, + "description": "Additional address information (fourth line of the billing address)\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "company": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 60, + "description": "Company name of person buying the product.\nImportant: This field or billTo.firstName and billTo.lastName must be present. Else, your request will fail.\n" + } + } + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "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)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "required": [ + "unitPrice" + ], + "properties": { + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "allowedExportCountries": { + "type": "array", + "items": { + "type": "string", + "description": "Comma-separated list of ISO country codes for countries to which the product can be exported.\n\nFor all possible values, see the \"Country and Territory Postal System Categories\" section in the [CyberSource Verification Services Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/)\n\nIf country codes are not specified, or if this field is not included, the U.S. government\u2019s country\ncode list is used.\n\n**Note** The default list of countries restricted by the U.S. always applies. Any country not\nspecifically added to the export field is considered restricted.\n" + } + }, + "restrictedExportCountries": { + "type": "array", + "items": { + "type": "string", + "description": "Comma-separated list of ISO country codes for countries to which the product cannot be exported.\n\nFor all possible values, see the \"Country and Territory Postal System Categories\" section in the [CyberSource Verification Services Using the SCMP API.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Verification_Svcs_SCMP_API/html/)\n\n**Note** If the export field is also present, the content of the `restrictedExportCountries`\nfield overrides the content of export.\n" + } + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productSKU": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productRisk": { + "type": "string", + "maxLength": 6, + "description": "Indicates the level of risk for the product. This field can contain one of the following values:\n- `low`: The product is associated with few chargebacks.\n- `normal`: The product is associated with a normal number of chargebacks.\n- `high`: The product is associated with many chargebacks.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + } + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Optional customer\u2019s account ID, tracking number, reward number, or other unique number\nthat you assign to the customer for the purpose that you choose\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + } + } + }, + "exportComplianceInformation": { + "type": "object", + "properties": { + "addressOperator": { + "type": "string", + "description": "Parts of the customer\u2019s information that must match with an entry in the DPL (denied parties list)\nbefore a match occurs. This field can contain one of the following values:\n- AND: (default) The customer\u2019s name or company and the customer\u2019s address must appear in the database.\n- OR: The customer\u2019s name must appear in the database.\n- IGNORE: You want the service to detect a match only of the customer\u2019s name or company but not of the address.\n" + }, + "weights": { + "type": "object", + "properties": { + "address": { + "type": "string", + "maxLength": 6, + "description": "Degree of correlation between a customer\u2019s address and an entry in the DPL\nbefore a match occurs. This field can contain one of the following values:\n- exact: The address must be identical to the entry in the DPL.\n- high: (default) The address cannot differ significantly from the entry in the DPL.\n- medium: The address can differ slightly more from the entry in the DPL.\n- low: The address can differ significantly from the entry in the DPL.\n" + }, + "company": { + "type": "string", + "maxLength": 6, + "description": "Degree of correlation between a company address and an entry in the DPL\nbefore a match occurs. This field can contain one of the following values:\n- exact: The company name must be identical to the entry in the DPL.\n- high: (default) The company name cannot differ significantly from the entry in the DPL.\n- medium: The company name can differ slightly more from the entry in the DPL.\n- low: The company name can differ significantly from the entry in the DPL.\n" + }, + "name": { + "type": "string", + "maxLength": 6, + "description": "Degree of correlation between a customer\u2019s name and an entry in the DPL\nbefore a match occurs. This field can contain one of the following values:\n- exact: The name must be identical to the entry in the DPL.\n- high: (default) The name cannot differ significantly from the entry in the DPL.\n- medium: The name can differ slightly more from the entry in the DPL.\n- low: The name can differ significantly the entry in the DPL.\n" + } + } + }, + "sanctionLists": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255 + }, + "description": "Use this field to specify which list(s) you want checked with the request.\nThe reply will include the list name as well as the response data.\nTo check against multiple lists, enter multiple list codes separated by a caret (^).\nFor more information, see \"Restricted and Denied Parties List,\" page 68.\n" + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response", + "schema": { + "title": "riskV1ExportComplianceInquiriesPost201Response", + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "submitTimeLocal": { + "type": "string", + "description": "Time that the transaction was submitted in local time. Generated by Cybersource." + }, + "status": { + "type": "string", + "description": "The status for the call can be:\n- COMPLETED\n- INVALID_REQUEST\n- DECLINED\n" + }, + "message": { + "type": "string", + "description": "The message describing the reason of the status. Value can be\n - The customer matched the Denied Parties List\n - The Export bill_country/ship_country match\n - Export email_country match\n - Export hostname_country/ip_country match\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "exportComplianceInformation": { + "type": "object", + "properties": { + "ipCountryConfidence": { + "type": "integer", + "minimum": -1, + "maximum": 100, + "description": "Likelihood that the country associated with the customer\u2019s IP address was identified correctly.\nReturns a value from 1\u2013100, where 100 indicates the highest likelihood.\nIf the country cannot be determined, the value is \u20131.\n" + }, + "infoCodes": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255 + }, + "description": "Returned when the Denied Parties List check (first two codes) or the export service (all others) would have\ndeclined the transaction. This field can contain one or more of these values:\n- `MATCH-DPC`: Denied Parties List match.\n- `UNV-DPC`: Denied Parties List unavailable.\n- `MATCH-BCO`: Billing country restricted.\n- `MATCH-EMCO`: Email country restricted.\n- `MATCH-HCO`: Host name country restricted.\n- `MATCH-IPCO`: IP country restricted.\n- `MATCH-SCO`: Shipping country restricted.\n" + }, + "watchList": { + "type": "object", + "properties": { + "matches": { + "type": "array", + "items": { + "type": "object", + "properties": { + "addresses": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255 + }, + "description": "Address found on the list specified in export_matchN_list\nfor the entity (name and address) in the request.\n" + }, + "sanctionList": { + "type": "string", + "maxLength": 255, + "description": "List on which the first Denied Parties List check match appears.\nFor a list of codes, see \"Denied Parties List Check Codes,\" page 56.\n" + }, + "aliases": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255 + }, + "description": "Name found on the list specified in export_matchN_list for the entity (name and address) in the request.\n" + }, + "programs": { + "type": "array", + "items": { + "type": "string", + "maxLength": 255 + }, + "description": "Sub-lists matched by the order data. List members are separated by carets (^)." + } + } + } + } + } + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status. Value can be\n - `CUSTOMER_WATCHLIST_MATCH`\n - `ADDRESS_COUNTRY_WATCHLIST_MATCH`\n - `EMAIL_COUNTRY_WATCHLIST_MATCH`\n - `IP_COUNTRY_WATCHLIST_MATCH`\n - `INVALID_MERCHANT_CONFIGURATION`\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" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "riskV1ExportComplianceInquiriesPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "riskV1ExportComplianceInquiriesPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Customer Match Denied Parties List", + "value": { + "clientReferenceInformation": { + "code": "verification example", + "comments": "Export-basic", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "orderInformation": { + "billTo": { + "address1": "901 Metro Centre Blvd", + "locality": "Foster City", + "country": "US", + "administrativeArea": "CA", + "postalCode": "94404", + "email": "test@domain.com", + "firstName": "ANDREE", + "lastName": "AGNESE", + "company": { + "name": "A & C International Trade, Inc" + } + }, + "shipTo": { + "address1": "114B", + "address2": "Grifendor House", + "locality": "Hogward University", + "country": "IN", + "firstName": "DumbelDore", + "lastName": "Albus" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "123456", + "productCode": "physical_software", + "productName": "Qwe", + "quantity": "3" + } + ] + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "verification example", + "comments": "Export-basic", + "partner": { + "developerId": "7891234", + "solutionId": "89012345" + } + }, + "errorInformation": { + "reason": "CUSTOMER_WATCHLIST_MATCH", + "message": "The customer matched the Denied Parties List" + }, + "exportComplianceInformation": { + "infoCodes": [ + "MATCH-DPC" + ] + }, + "id": "5585068111056392703092", + "status": "DECLINED", + "submitTimeUtc": "2019-05-22T06:33:31Z" + } + }, + "example1": { + "summary": "Export Compliance Information Provided", + "value": { + "clientReferenceInformation": { + "code": "verification example", + "comments": "Export -fields" + }, + "orderInformation": { + "billTo": { + "address1": "901 Metro Centre Blvd", + "locality": "Foster City", + "country": "US", + "administrativeArea": "CA", + "postalCode": "94404", + "email": "test@domain.com", + "firstName": "ANDREE", + "lastName": "AGNESE", + "company": { + "name": "A & C International Trade, Inc" + } + }, + "shipTo": { + "address1": "114B", + "address2": "Grifendor House", + "locality": "Hogward University", + "country": "IN", + "firstName": "DumbelDore", + "lastName": "Albus" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "123456", + "productCode": "physical_software", + "productName": "Qwe", + "quantity": "3" + } + ] + }, + "exportComplianceInformation": { + "addressOperator": "and", + "weights": { + "address": "low", + "company": "exact", + "name": "exact" + }, + "sanctionLists": [ + "Bureau Of Industry and Security" + ] + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "verification example" + }, + "errorInformation": { + "reason": "CUSTOMER_WATCHLIST_MATCH", + "message": "The customer matched the Denied Parties List" + }, + "exportComplianceInformation": { + "infoCodes": [ + "MATCH-DPC" + ] + }, + "id": "5585070617626392903092", + "status": "DECLINED", + "submitTimeUtc": "2019-05-22T06:37:42Z" + } + }, + "example2": { + "summary": "Compliance Status Completed", + "value": { + "clientReferenceInformation": { + "code": "verification example" + }, + "orderInformation": { + "billTo": { + "firstName": "Suman", + "lastName": "Kumar", + "address1": "901 Metro Centre Blvd", + "address2": "2", + "locality": "Foster City", + "country": "US", + "administrativeArea": "CA", + "postalCode": "94404", + "email": "donewithhorizon@test.com" + }, + "lineItems": [ + { + "unitPrice": "19.00" + } + ], + "shipTo": { + "address1": "26 JALAN MT. ERSKINE", + "address2": "Grifendor House", + "locality": "PENANG", + "country": "be", + "firstName": "DumbelDore", + "lastName": "Albus", + "phoneNumber": "54871425369", + "administrativeArea": "NH", + "postalCode": "2176001", + "method": "lowcost" + } + }, + "buyerInformation": { + "merchantCustomerId": "87789" + }, + "exportComplianceInformation": { + "addressOperator": "and", + "weights": { + "address": "abc", + "company": "def", + "name": "adb" + }, + "sanctionLists": [ + "abc", + "acc", + "bac" + ] + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "verification example" + }, + "exportComplianceInformation": { + "ipCountryConfidence": "-1" + }, + "id": "5585073068196393103092", + "status": "COMPLETED", + "submitTimeUtc": "2019-05-22T06:41:48Z" + } + }, + "example3": { + "summary": "Multiple Sanction Lists", + "value": { + "clientReferenceInformation": { + "code": "verification example", + "comments": "All fields" + }, + "orderInformation": { + "billTo": { + "address1": "901 Metro Centre Blvd", + "address2": " ", + "address3": "", + "address4": "Foster City", + "locality": "CA", + "country": "US", + "administrativeArea": "NH", + "postalCode": "03055", + "email": "test@domain.com", + "firstName": "Suman", + "lastName": "Kumar", + "company": { + "name": "A & C International Trade, Inc." + } + }, + "shipTo": { + "address1": "114B", + "address2": "Grifendor House", + "locality": "Hogward University", + "country": "IN", + "destinationCode": "ASD", + "firstName": "DumbelDore", + "lastName": "Albus" + }, + "lineItems": [ + { + "unitPrice": "120.50", + "productSKU": "610009", + "productCode": "physical_software", + "productName": "Xer", + "quantity": "3" + } + ] + }, + "exportComplianceInformation": { + "addressOperator": "and", + "weights": { + "address": "low", + "company": "exact", + "name": "exact" + }, + "sanctionLists": [ + "Bureau Of Industry and Security", + "DOS_DTC", + "AUSTRALIA" + ] + }, + "deviceInformation": { + "hostName": "www.cybersource.ir", + "ipAddress": "127.0.0.1" + }, + "buyerInformation": { + "merchantCustomerId": "Export1" + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "verification example" + }, + "errorInformation": { + "reason": "CUSTOMER_WATCHLIST_MATCH", + "message": "The customer matched the Denied Parties List" + }, + "exportComplianceInformation": { + "infoCodes": [ + "MATCH-DPC" + ] + }, + "id": "5574745444896030103092", + "status": "DECLINED", + "submitTimeUtc": "2019-05-10T07:49:06Z" + } + }, + "example4": { + "summary": "No Company Name", + "value": { + "clientReferenceInformation": { + "code": "verification example" + }, + "orderInformation": { + "billTo": { + "firstName": "Suman", + "lastName": "Kumar", + "address1": "901 Metro Centre Blvd", + "address2": "2", + "locality": "Foster City", + "country": "US", + "administrativeArea": "CA", + "postalCode": "94404", + "email": "donewithhorizon@test.com" + }, + "lineItems": [ + { + "unitPrice": "19.00" + } + ], + "shipTo": { + "address1": "26 JALAN MT. ERSKINE", + "address2": "Grifendor House", + "locality": "PENANG", + "country": "be", + "firstName": "DumbelDore", + "lastName": "Albus", + "phoneNumber": "54871425369", + "administrativeArea": "NH", + "postalCode": "2176001", + "method": "lowcost" + } + }, + "buyerInformation": { + "merchantCustomerId": "87789" + } + }, + "responseValue": { + "clientReferenceInformation": { + "code": "verification example" + }, + "exportComplianceInformation": { + "ipCountryConfidence": "-1" + }, + "id": "5585076921686393803092", + "status": "COMPLETED", + "submitTimeUtc": "2019-05-22T06:48:14Z" + } + } + } + } + }, + "/pts/v2/payouts": { + "post": { + "summary": "Process a Payout", + "description": "Send funds from a selected funding source to a designated credit/debit card account or a prepaid card using an Original Credit Transaction (OCT).\n", + "tags": [ + "Payouts" + ], + "operationId": "octCreatePayment", + "x-devcenter-metaData": { + "categoryTag": "Payouts" + }, + "parameters": [ + { + "name": "octCreatePaymentRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "surcharge": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 15, + "description": "The surcharge amount is included in the total transaction amount but is passed in a separate field to the issuer and acquirer for tracking. The issuer can provide information about the surcharge amount to the customer.\n\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n\n**NOTE**: This field is supported only for CyberSource through VisaNet (CtV) for Payouts. For CtV, the maximum string length is 8.\n\n#### PIN debit\nSurcharge amount that you are charging the customer for this transaction. If you include a surcharge amount\nin the request, you must also include the surcharge amount in the value for `orderInformation.amountDetails.totalAmount`.\n\nOptional field for transactions that use PIN debit credit or PIN debit purchase.\n" + } + } + } + } + }, + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneType": { + "type": "string", + "description": "Customer's phone number type.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\nPossible Values:\n* day\n* home\n* night\n* work\n" + } + } + }, + "isCryptocurrencyPurchase": { + "type": "string", + "description": "#### Visa Platform Connect :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nAdditional values to add :\nThis API will contain the Flag that specifies whether the payment is for the purchase of cryptocurrency.\nvalid values are\n- Y/y, true\n- N/n, false\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "categoryCode": { + "type": "integer", + "maximum": 9999, + "description": "The value for this field is a four-digit number that the payment card industry uses to classify\nmerchants into market segments. A payment card company assigned one or more of these values to your business when you started\naccepting the payment card company\u2019s cards. When you do not include this field in your request, CyberSource uses the value in your\nCyberSource account.\n\nFor processor-specific information, see the `merchant_category_code` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR4\n- Position: 150-153\n- Field: Merchant Category Code\n" + }, + "submitLocalDateTime": { + "type": "string", + "description": "Time that the transaction was submitted in local time. The time is in hhmmss format.\n" + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "administrativeArea": { + "type": "string", + "description": "The state where the merchant is located.\n\n#### PIN debit\nState 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\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 14, + "description": "Merchant's postal code.\n\n#### PIN debit\nPostal code for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nIf 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:\n[5 digits][dash][4 digits]\nExample: `12345-6789`\n\nIf 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:\n[alpha][numeric][alpha][space]\n[numeric][alpha][numeric]\nExample: `A1B 2C3`\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\n**Note** This field is supported only for businesses located in the U.S. or Canada.\n**Important** Mastercard requires a postal code for any country that uses postal codes.\nYou can provide the postal code in your account or you can include this field in your request.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + }, + "contact": { + "type": "string", + "maxLength": 14, + "description": "For the descriptions, used-by information, data types, and lengths for these fields, see `merchant_descriptor_contact` field description\nin [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)-->\nContact information for the merchant.\n\n**Note** These are the maximum data lengths for the following payment processors:\n- FDCCompass (13)\n- Paymentech (13)\n" + } + } + } + } + }, + "recipientInformation": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 35, + "description": "First name of recipient.\ncharacters.\n* CTV (14)\n* Paymentech (30)\n" + }, + "middleInitial": { + "type": "string", + "maxLength": 1, + "description": "Middle Initial of recipient. Required only for FDCCompass.\n" + }, + "middleName": { + "type": "string", + "maxLength": 35, + "description": "Recipient\u2019s middle name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n" + }, + "lastName": { + "type": "string", + "maxLength": 35, + "description": "Last name of recipient.\ncharacters.\n* CTV (14)\n* Paymentech (30)\n" + }, + "address1": { + "type": "string", + "maxLength": 50, + "description": "Recipient address information. Required only for FDCCompass." + }, + "locality": { + "type": "string", + "maxLength": 25, + "description": "Recipient city. Required only for FDCCompass." + }, + "administrativeArea": { + "type": "string", + "maxLength": 3, + "description": "Recipient State. Required only for FDCCompass." + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Recipient country code. Required only for FDCCompass." + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Recipient postal code. Required only for FDCCompass." + }, + "phoneNumber": { + "type": "string", + "maxLength": 20, + "description": "Recipient phone number. Required only for FDCCompass." + }, + "dateOfBirth": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "description": "Recipient date of birth in YYYYMMDD format. Required only for FDCCompass." + } + } + }, + "senderInformation": { + "type": "object", + "properties": { + "referenceNumber": { + "type": "string", + "maxLength": 19, + "description": "Reference number generated by you that uniquely identifies the sender." + }, + "account": { + "type": "object", + "properties": { + "fundsSource": { + "type": "string", + "minLength": 2, + "maxLength": 2, + "description": "Source of funds. Possible values:\n\n Paymentech, CTV, FDC Compass:\n - 01: Credit card\n - 02: Debit card\n - 03: Prepaid card\n\n Paymentech, CTV -\n - 04: Cash\n - 05: Debit or deposit account that is not linked to a Visa card. Includes checking accounts, savings\n accounts, and proprietary debit or ATM cards.\n - 06: Credit account that is not linked to a Visa card. Includes credit cards and proprietary lines\n of credit.\n\n FDCCompass -\n - 04: Deposit Account\n\n**Funds Disbursement**\n\nThis value is most likely 05 to identify that the originator used a deposit account to fund the\ndisbursement.\n\n**Credit Card Bill Payment**\n\nThis value must be 02, 03, 04, or 05.\n" + }, + "number": { + "type": "string", + "maxLength": 34, + "description": "The account number of the entity funding the transaction. It is the sender\u2019s account number. It can\nbe a debit/credit card account number or bank account number.\n\n**Funds disbursements**\n\nThis field is optional.\n\n**All other transactions**\n\nThis field is required when the sender funds the transaction with a financial instrument, for example\ndebit card.\nLength:\n* FDCCompass (<= 19)\n* Paymentech (<= 16)\n" + } + } + }, + "firstName": { + "type": "string", + "maxLength": 35, + "description": "First name of sender (Optional).\n* CTV (14)\n* Paymentech (30)\n" + }, + "middleInitial": { + "type": "string", + "maxLength": 1, + "description": "Recipient middle initial (Optional).\n" + }, + "middleName": { + "type": "string", + "maxLength": 35, + "description": "Sender\u2019s middle name. This field is a _passthrough_, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor. If the field is not required for the transaction,\nCyberSource does not forward it to the processor.\n" + }, + "lastName": { + "type": "string", + "maxLength": 35, + "description": "Recipient last name (Optional).\n* CTV (14)\n* Paymentech (30)\n" + }, + "name": { + "type": "string", + "maxLength": 24, + "description": "Name of sender.\n\n**Funds Disbursement**\n\nThis value is the name of the originator sending the funds disbursement.\n* CTV, Paymentech (30)\n" + }, + "address1": { + "type": "string", + "maxLength": 50, + "description": "Street address of sender.\n\n**Funds Disbursement**\n\nThis value is the address of the originator sending the funds disbursement.\n" + }, + "locality": { + "type": "string", + "maxLength": 25, + "description": "City of sender.\n\n**Funds Disbursement**\n\nThis value is the city of the originator sending the funds disbursement.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "Sender\u2019s state. 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).\n" + }, + "countryCode": { + "type": "string", + "maxLength": 2, + "description": "Country of sender. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n* CTV (3)\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Sender\u2019s postal code. Required only for FDCCompass." + }, + "phoneNumber": { + "type": "string", + "maxLength": 20, + "description": "Sender\u2019s phone number. Required only for FDCCompass." + }, + "dateOfBirth": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "description": "Sender\u2019s date of birth in YYYYMMDD format. Required only for FDCCompass." + }, + "vatRegistrationNumber": { + "type": "string", + "maxLength": 13, + "description": "Customer's government-assigned tax identification number.\n" + }, + "personalIdType": { + "type": "string", + "maxLength": 4, + "description": "#### Visa Platform Connect\nThis tag will contain the type of sender identification.\nThe valid values are:\n\u2022 BTHD (Date of birth)\n\u2022 CUID (Customer identification (unspecified))\n\u2022 NTID (National identification)\n\u2022 PASN (Passport number)\n\u2022 DRLN (Driver license)\n\u2022 TXIN (Tax identification)\n\u2022 CPNY (Company registration number)\n\u2022 PRXY (Proxy identification)\n\u2022 SSNB (Social security number)\n\u2022 ARNB (Alien registration number)\n\u2022 LAWE (Law enforcement identification)\n\u2022 MILI (Military identification)\n\u2022 TRVL (Travel identification (non-passport))\n\u2022 EMAL (Email)\n\u2022 PHON (Phone number)\n" + }, + "type": { + "type": "string", + "maxLength": 1, + "description": "#### Visa Platform Connect\nThis tag will denote whether the tax ID is a business or individual tax ID when personal ID Type contains the value of TXIN (Tax identification).\n\nThe valid values are:\n\u2022 B (Business)\n\u2022 I (Individual)\n" + }, + "identificationNumber": { + "type": "string", + "maxLength": 255, + "description": "#### Visa Platform Connect\nThis tag will contain an acquirer-populated value associated with the API : senderInformation.personalIdType which will identify the personal ID type of the sender.\n" + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "businessApplicationId": { + "type": "string", + "maxLength": 2, + "description": "Payouts transaction type.\n\nApplicable Processors: FDC Compass, Paymentech, CtV\n\nPossible values:\n\n**Credit Card Bill Payment**\n\n - **CP**: credit card bill payment\n\n**Funds Disbursement**\n\n - **FD**: funds disbursement\n - **GD**: government disbursement\n - **MD**: merchant disbursement\n\n**Money Transfer**\n\n - **AA**: account to account. Sender and receiver are same person.\n - **PP**: person to person. Sender and receiver are different.\n\n**Prepaid Load**\n\n - **TU**: top up\n" + }, + "networkRoutingOrder": { + "type": "string", + "maxLength": 30, + "description": "This field is optionally used by Push Payments Gateway participants (merchants and acquirers) to get the attributes for specified networks only.\nThe networks specified in this field must be a subset of the information provided during program enrollment. Refer to Sharing Group Code/Network Routing Order.\nNote: Supported only in US for domestic transactions involving Push Payments Gateway Service.\n\nVisaNet checks to determine if there are issuer routing preferences for any of the networks specified by the network routing order.\nIf an issuer preference exists for one of the specified debit networks, VisaNet makes a routing selection based on the issuer\u2019s preference. \nIf an issuer preference exists for more than one of the specified debit networks, or if no issuer preference exists, VisaNet makes a selection based on the acquirer\u2019s routing priorities. \n\nFor details, see the `network_order` field description in [BIN Lookup Service Using the SCMP API.](http://apps.cybersource.com/library/documentation/BIN_Lookup/BIN_Lookup_SCMP_API/html/)\n" + }, + "commerceIndicator": { + "type": "string", + "maxLength": 13, + "description": "Type of transaction.\n\nValue for an OCT transaction:\n- `internet`\n\nFor details, see the `e_commerce_indicator` field description in [Payouts Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SCMP/html/)\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Please check with Cybersource customer support to see if your merchant account is configured correctly so you\ncan include this field in your request.\n* For Payouts: max length for FDCCompass is String (22).\n" + }, + "payoutsOptions": { + "type": "object", + "properties": { + "acquirerMerchantId": { + "type": "string", + "maxLength": 15, + "description": "This field identifies the card acceptor for defining the point of service terminal in both local and interchange environments. An acquirer-assigned code identifying the card acceptor for the transaction. \nDepending on the acquirer and merchant billing and reporting requirements, the code can represent a merchant, a specific merchant location, or a specific merchant location terminal.\nAcquiring Institution Identification Code uniquely identifies the merchant.\nThe value from the original is required in any subsequent messages, including reversals, chargebacks, and representments.\n* Applicable only for CTV for Payouts.\n" + }, + "acquirerBin": { + "type": "string", + "maxLength": 11, + "description": "This code identifies the financial institution acting as the acquirer of this customer transaction. The acquirer is the member or system user that signed the merchant or ADM or dispensed cash. \nThis number is usually Visa-assigned.\n* Applicable only for CTV for Payouts.\n" + }, + "retrievalReferenceNumber": { + "type": "string", + "maxLength": 12, + "description": "This field contains a number that is used with other data elements as a key to identify and track all messages related to a given cardholder transaction;\nthat is, to a given transaction set.\n\nFormat:\n Positions 1-4: The `yddd` equivalent of the date, where `y` = 0-9 and `ddd` = 001 \u2013 366.\n Positions 5-12: A unique identification number generated by the merchant\n\n* Applicable only for CTV for Payouts.\n" + }, + "accountFundingReferenceId": { + "type": "string", + "maxLength": 15, + "description": "Visa-generated transaction identifier (TID) that is unique for each original authorization and financial request.\n* Applicable only for CTV for Payouts.\n" + } + } + }, + "transactionReason": { + "type": "string", + "maxLength": 4, + "description": "Transaction reason code.\n" + }, + "purposeOfPayment": { + "type": "string", + "maxLength": 12, + "description": "This will send purpose of funds code for original credit transactions (OCTs).\n" + }, + "fundingOptions": { + "type": "object", + "properties": { + "initiator": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 1, + "description": "#### Visa Platform Connect :\nThis API will contain a code that denotes whether the customer identification data belongs to the sender or the recipient.\n\nThe valid values are:\n\u2022 S (Payer (sender))\n\u2022 R (Payee (recipient))\n" + } + } + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "number": { + "type": "string", + "maxLength": 20, + "description": "The customer\u2019s payment card number, also known as the Primary Account Number (PAN). You can also use this field\nfor encoded account numbers.\n\n#### FDMS Nashville\nRequired. String (19)\n\n#### GPX\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "sourceAccountType": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nThis field is required in the following cases:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n - Applicable only for CyberSource through VisaNet (CtV).\n\n**Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank\nidentification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or\ncredit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends\nthat you include this field for combo card transactions.\n\nPossible values include the following.\n\n - `CHECKING`: Checking account\n - `CREDIT`: Credit card account\n - `SAVING`: Saving account\n - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card\n - `PREPAID`: Prepaid card account or prepaid portion of combo card\n - `UNIVERSAL`: Universal account\n" + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token used in the transaction.\nWhen you include this value in your request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n", + "minLength": 1, + "maxLength": 32 + } + } + } + } + } + }, + "example": { + "clientReferenceInformation": { + "code": "33557799" + }, + "senderInformation": { + "referenceNumber": "1234567890", + "address1": "900 Metro Center Blvd.900", + "countryCode": "US", + "locality": "Foster City", + "name": "Thomas Jefferson", + "administrativeArea": "CA", + "account": { + "number": "1234567890123456789012345678901234", + "fundsSource": "01" + } + }, + "processingInformation": { + "commerceIndicator": "internet", + "businessApplicationId": "FD", + "networkRoutingOrder": "ECG" + }, + "payoutsOptions": { + "retrievalReferenceNumber": "123456789012", + "acquirerBin": "567890124" + }, + "reconciliationId": "1087488702VIAQNSPQ", + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "merchantInformation": { + "merchantCategoryCode": "123", + "merchantDescriptor": { + "country": "US", + "postalCode": "94440", + "locality": "FC", + "name": "Thomas", + "administrativeArea": "CA" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2025", + "number": "4111111111111111", + "expirationMonth": "12", + "type": "001", + "sourceAccountType": "CH" + } + }, + "recipientInformation": { + "firstName": "John", + "lastName": "Doe", + "address1": "Paseo Padre Boulevard", + "locality": "Foster City", + "administrativeArea": "CA", + "postalCode": "94400", + "phoneNumber": "6504320556", + "dateOfBirth": "19801009", + "country": "US" + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "ptsV2PayoutsPost201Response", + "example": { + "_links": { + "self": { + "href": "/pts/v2/payouts/5287556536256000401540", + "method": "GET" + } + }, + "clientReferenceInformation": { + "code": "1528755653559" + }, + "id": "5287556536256000401540", + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "processorInformation": { + "systemTraceAuditNumber": "897596", + "approvalCode": "831000", + "transactionId": "016153570198200", + "responseCode": "00", + "responseCodeSource": "5" + }, + "reconciliationId": "1087488702VIAQNSPQ", + "status": "ACCEPTED", + "submitTimeUtc": "2018-06-11T222054Z" + }, + "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." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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\ntime. The Z indicates UTC.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n - DECLINED\n - INVALID_REQUEST\n" + }, + "reconciliationId": { + "type": "string", + "maxLength": 25, + "description": "Cybersource or merchant generated transaction reference number. This is sent to the processor and is echoed back in the response to the merchant. This is\nThis value is used for reconciliation purposes.\n" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - EXPIRED_CARD\n - PROCESSOR_DECLINED\n - STOLEN_LOST_CARD\n - UNAUTHORIZED_CARD\n - CVN_NOT_MATCH\n - INVALID_CVN\n - BLACKLISTED_CUSTOMER\n - INVALID_ACCOUNT\n - GENERAL_DECLINE\n - RISK_CONTROL_DECLINE\n - PROCESSOR_RISK_CONTROL_DECLINE\n - ALLOWABLE_PIN_RETRIES_EXCEEDED\n - PROCESSOR_ERROR\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" + } + } + } + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + }, + "locality": { + "type": "string", + "maxLength": 13, + "description": "Merchant's City.\n\n#### PIN debit\nCity for your business location. This value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Merchant's country.\n\n#### PIN debit\nCountry code for your business location. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\nThis value might be displayed on the cardholder\u2019s statement.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n**Note** If your business is located in the U.S. or Canada and you include this field in a\nrequest, you must also include `merchantInformation.merchantDescriptor.administrativeArea`.\n\nOptional field for PIN debit credit or PIN debit purchase.\n" + } + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "settlementAmount": { + "type": "string", + "maxLength": 12, + "description": "This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder\u2019s account.\nThis field is returned for OCT transactions.\n" + }, + "settlementCurrency": { + "type": "string", + "maxLength": 3, + "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder's account.\nThis field is returned for OCT transactions.\n" + } + } + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Issuer-generated approval code for the transaction." + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "Transaction status from the processor." + }, + "transactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier (TID). This value can be used to identify a specific transaction when\nyou are discussing the transaction with your processor.\n" + }, + "systemTraceAuditNumber": { + "type": "string", + "maxLength": 6, + "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" + }, + "responseCodeSource": { + "type": "string", + "maxLength": 1, + "description": "Used by Visa only and contains the response source/reason code that identifies the source of the response decision.\n" + } + } + }, + "recipientInformation": { + "type": "object", + "properties": { + "card": { + "type": "object", + "properties": { + "balance": { + "type": "string", + "maxLength": 12, + "description": "This field shows the available balance in the prepaid account.\nAcquirers always receive the available balance in the transaction currency.\n" + }, + "currency": { + "type": "string", + "maxLength": 3, + "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer.\n" + } + } + } + } + } + }, + "type": "object" + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "ptsV2PayoutsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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\ntime. The Z indicates UTC.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction." + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "ptsV2PayoutsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Payout (Card not Token)", + "sample-name": "Process Payout Card", + "value": { + "clientReferenceInformation": { + "code": "33557799" + }, + "senderInformation": { + "referenceNumber": "1234567890", + "address1": "900 Metro Center Blvd.900", + "countryCode": "US", + "locality": "Foster City", + "name": "Company Name", + "administrativeArea": "CA", + "account": { + "fundsSource": "05" + } + }, + "processingInformation": { + "commerceIndicator": "internet", + "businessApplicationId": "FD", + "networkRoutingOrder": "V8" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "merchantInformation": { + "merchantDescriptor": { + "country": "US", + "postalCode": "94440", + "locality": "FC", + "name": "Sending Company Name", + "administrativeArea": "CA" + } + }, + "paymentInformation": { + "card": { + "expirationYear": "2025", + "number": "4111111111111111", + "expirationMonth": "12", + "type": "001" + } + }, + "recipientInformation": { + "firstName": "John", + "lastName": "Doe", + "address1": "Paseo Padre Boulevard", + "locality": "Foster City", + "administrativeArea": "CA", + "postalCode": "94400", + "phoneNumber": "6504320556", + "country": "US" + } + } + }, + "example1": { + "summary": "Payout (Token)", + "sample-name": "Process Payout Token", + "value": { + "clientReferenceInformation": { + "code": "111111113" + }, + "senderInformation": { + "referenceNumber": "1234567890", + "address1": "900 Metro Center Blvd.900", + "countryCode": "US", + "locality": "Foster City", + "name": "Company Name", + "administrativeArea": "CA", + "account": { + "number": "1234567890123456789012345678901234", + "fundsSource": "05" + } + }, + "processingInformation": { + "commerceIndicator": "internet", + "businessApplicationId": "FD", + "networkRoutingOrder": "V8" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "111.00", + "currency": "USD" + } + }, + "merchantInformation": { + "merchantDescriptor": { + "country": "US", + "postalCode": "94440", + "locality": "FC", + "name": "Sending Company Name", + "administrativeArea": "CA" + } + }, + "paymentInformation": { + "customer": { + "customerId": "7500BB199B4270EFE05340588D0AFCAD" + } + }, + "recipientInformation": { + "firstName": "John", + "lastName": "Doe", + "address1": "Paseo Padre Boulevard", + "locality": "Foster City", + "administrativeArea": "CA", + "postalCode": "94400", + "phoneNumber": "6504320556", + "country": "US" + } + } + } + } + } + }, + "/tss/v2/transactions/{id}": { + "get": { + "summary": "Retrieve a Transaction", + "description": "Include the Request ID in the GET request to retrieve the transaction details.", + "tags": [ + "TransactionDetails" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "operationId": "getTransaction", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Details", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_details_api.html" + }, + "parameters": [ + { + "name": "id", + "in": "path", + "description": "Request ID.\n", + "required": true, + "type": "string" + } + ], + "x-depends": { + "example": { + "path": "/pts/v2/payments", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Successful response.", + "schema": { + "title": "tssV2TransactionsGet200Response", + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "rootId": { + "type": "string", + "maxLength": 26, + "description": "Contains the transaction identifier for the first transaction in the series of transactions. For example, you might send an authorization request for a payment, followed by a capture request for that payment, and then a refund request for that captured payment. Each of those requests, if successful, creates a resource that is assigned an identifier, which is returned in the response. The rootId identifies the first ID in the series, which in this case would be the ID of the original authorization." + }, + "reconciliationId": { + "type": "string", + "maxLength": 60, + "description": "Reference number for the transaction.\nDepending on how your Cybersource account is configured, this value could either be provided in the API request or generated by CyberSource.\nThe actual value used in the request to the processor is provided back to you by Cybersource in the response.\n" + }, + "merchantId": { + "type": "string", + "description": "Your CyberSource merchant ID." + }, + "submitTimeUTC": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "applicationInformation": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "The status of the submitted transaction." + }, + "reasonCode": { + "type": "string", + "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" + }, + "rCode": { + "type": "string", + "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n" + }, + "applications": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.\n" + }, + "status": { + "type": "string", + "description": "The description for this field is not available." + }, + "reasonCode": { + "type": "string", + "description": "3-digit reason code that indicates why the customer profile payment succeeded or failed." + }, + "rCode": { + "type": "string", + "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n" + }, + "reconciliationId": { + "type": "string", + "description": "Reference number that you use to reconcile your CyberSource reports with your processor reports.\n" + }, + "rMessage": { + "type": "string", + "description": "Message that explains the reply flag for the application.\n" + }, + "returnCode": { + "type": "integer", + "description": "The description for this field is not available." + } + } + } + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "hashedPassword": { + "type": "string", + "maxLength": 100, + "description": "The merchant's password that CyberSource hashes and stores as a hashed password.\n\nFor details about this field, see the `customer_password` field description in _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "applicationVersion": { + "type": "string", + "description": "Version of the CyberSource application or integration used for a transaction.\n" + }, + "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.\n" + }, + "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.\n" + }, + "partner": { + "type": "object", + "properties": { + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "thirdPartyCertificationNumber": { + "type": "string", + "maxLength": 12, + "description": "Value that identifies the application vendor and application version for a third party gateway.\nCyberSource provides you with this value during testing and validation.\nThis field is supported only on CyberSource through VisaNet.\n\n#### Used by\n**Authorization, Authorization Reversal, Capture, Credit, Incremental Authorization, and Void**\nOptional field.\n\n#### PIN debit\nRequired field for PIN debit credit, PIN debit purchase, or PIN debit reversal request.\n" + } + } + }, + "comments": { + "type": "string", + "maxLength": 255, + "description": "Brief description of the order or any comment you wish to add to the order.\n" + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "eciRaw": { + "type": "string", + "maxLength": 2, + "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "cavv": { + "type": "string", + "maxLength": 40, + "description": "Cardholder authentication verification value (CAVV)." + }, + "xid": { + "type": "string", + "maxLength": 40, + "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." + }, + "strongAuthentication": { + "type": "object", + "properties": { + "lowValueExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the low value exemption indicator with one of the following values:\nPossible values:\n- `0` ( low value exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be a low value payment)\n" + }, + "riskAnalysisExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the transaction risk analysis exemption indicator with one of the following values:\nPossible values:\n- `0` (TRA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it to be low risk in accordance with the criteria defined by PSD2/RTS)\n" + }, + "trustedMerchantExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "Possible values:\n- `0` (Trusted merchant exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as it originated at a merchant trusted by the cardholder)\n" + }, + "secureCorporatePaymentIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the secure corporate payment exemption indicator with one of the following values:\nPossible values:\n- `0` (SCA exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as the merchant/acquirer has determined it as a secure corporate payment)\n" + }, + "delegatedAuthenticationExemptionIndicator": { + "type": "string", + "maxLength": 1, + "description": "This field will contain the delegated authentication exemption indicator with one of the following values:\nPossible values:\n- `0` (delegated Authentication exemption does not apply to the transaction)\n- `1` (Transaction exempt from SCA as authentication has been delegated to other provider (PSP,Acquirer))\n" + } + } + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + }, + "hostName": { + "type": "string", + "maxLength": 60, + "description": "DNS resolved hostname from `ipAddress`." + }, + "cookiesAccepted": { + "type": "string", + "description": "Whether the customer\u2019s browser accepts cookies. This field can contain one of the following values:\n- `yes`: The customer\u2019s browser accepts cookies.\n- `no`: The customer\u2019s browser does not accept cookies.\n" + } + } + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "1-word description of why a request succeeded or failed.\n" + }, + "message": { + "type": "string", + "description": "The user-facing description for why a request succeeded or failed.\n" + }, + "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" + } + } + } + } + } + }, + "installmentInformation": { + "type": "object", + "properties": { + "numberOfInstallments": { + "type": "string", + "description": "Number of Installments." + }, + "identifier": { + "type": "string", + "maximum": 60, + "description": "Standing Instruction/Installment identifier.\n" + } + } + }, + "fraudMarkingInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.\n- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.\n- suspected: You believe that you will probably receive a chargeback for the transaction.\n- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.\n" + } + } + }, + "healthCareInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "array", + "description": "array for Healthcare fields", + "items": { + "type": "object", + "properties": { + "amountType": { + "type": "string", + "maxLength": 35, + "description": "Total amount that has been spent on healthcare in a transaction.\nValid Values for **Visa**:\n- `healthcare` - Total Amount Healthcare\n- `healthcare-transit` - Amount Transit\n- `vision` - Amount Vision/Optical\n- `prescription` - Amount Prescription/RX\n- `clinic` - Amount Clinic/Other Qualified Medical\n- `dental` - Amount Dental\n\n\n`Note:` - Prescription, Clinic and dental amounts must be preceded with the total healthcare amount and cannot occur individually. Vision and Transit must be sent individually and cannot be combined with total healthcare amount or any other amounts. Total Healthcare amount can be sent individually.\n\nValid Values for **MasterCard**:\n- `prescription` - Amount Prescription/RX\n- `eligible-total` - Total Amount Healthcare\n\n\n`Note:` - Prescription must be preceded with the total healthcare amount and cannot occur individually. Total Healthcare amount can be sent individually.\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total Amount that has been spent on the corresponding amountType. This is 13 byte field including sign.\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n" + } + } + } + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "merchantDescriptor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Your merchant name.\n\n**Note** For Paymentech processor using Cybersource Payouts, the maximum data length is 22.\n\n#### PIN debit\nYour business name. This name is displayed on the cardholder\u2019s statement. When you\ninclude more than one consecutive space, extra spaces are removed.\n\nWhen you do not include this value in your PIN debit request, the merchant name from your account is used.\n**Important** This value must consist of English characters.\n\nOptional field for PIN debit credit or PIN debit purchase requests.\n\n#### Airline processing\nYour merchant name. This name is displayed on the cardholder\u2019s statement. When you include more than one consecutive space, extra spaces are removed.\n\n**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.\n\n**Important** This value must consist of English characters.\n\nRequired for captures and credits.\n" + } + } + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "middleName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s middle name.\n" + }, + "nameSuffix": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s name suffix.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Used for additional address information. For example: _Attention: Accounts Payable_\nOptional field.\n\nFor Payouts: This field may be sent only for FDC Compass.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate `orderInformation.billTo.address1` and `orderInformation.billTo.address2`,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### Chase Paymentech Solutions, FDC Compass, and TSYS Acquiring Solutions\nThis value is used for AVS.\n\n#### FDMS Nashville\n`orderInformation.billTo.address1` and `orderInformation.billTo.address2` together cannot exceed 20 characters.\nString (20)\n\n#### All Other Processors\nString (60)\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Payment card billing city.\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 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "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#### 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" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\n**CyberSource through VisaNet**\nCredit 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.\n\nFor processor-specific information, see the `company_name` field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "title": { + "type": "string", + "maxLength": 60, + "description": "Title.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 20, + "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).\n\nFor Payouts: This field may be sent only for FDC Compass.\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\nASCII characters for transmission to the credit card networks.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "company": { + "type": "string", + "maxLength": 60, + "description": "Name of the customer\u2019s company.\n\nFor processor-specific information, see the company_name field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + } + } + }, + "lineItems": { + "type": "array", + "description": "Transaction Line Item data.", + "items": { + "type": "object", + "properties": { + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. This value is used to determine the category that the product is in: electronic, handling,\nphysical, service, or shipping. The default value is **default**.\n\nFor a payment, when you set this field to a value other than default or any of the values related to\nshipping and handling, below fields _quantity_, _productName_, and _productSKU_ are required.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For PAYMENT and CAPTURE API, this field is required when above _productCode_ is not **default** or one of the\nvalues related to shipping and handling.\n" + }, + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Identification code for the product. For Payment and Capture APIs, this field is required when above\n`productCode` is not **default** or one of the values related to shipping and/or handling.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n1. You include each line item in your request.\n - 1st line item has `amount=10.00`, `quantity=1`, and `taxAmount=0.80`\n - 2nd line item has `amount=20.00`, `quantity=1`, and `taxAmount=1.60`\n2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nThis field is frequently used for Level II and Level III transactions.\n\nFor details, see `tax_amount` field description in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "description": "For a payment or capture, this field is required when _productCode_ is not **default** or one of the values\nrelated to shipping and handling.\n", + "default": 1 + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value cannot be negative. You can include a decimal point (.), but you\ncannot include any other special characters. CyberSource truncates the amount to the correct number of decimal\nplaces.\n\nFor processor-specific information, see the amount field in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + }, + "fulfillmentType": { + "type": "string", + "description": "The description for this field is not available." + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 12, + "description": "Total tax amount for all the items in the order.\n" + }, + "authorizedAmount": { + "type": "string", + "maxLength": 15, + "description": "Amount that was authorized.\n\nReturned by authorization service.\n\n#### PIN debit\nAmount of the purchase.\n\nReturned by PIN debit purchase.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in Merchant Descriptors Using the SCMP API.\n" + }, + "settlementAmount": { + "type": "string", + "maxLength": 12, + "description": "This is a multicurrency field. It contains the transaction amount (field 4), converted to the Currency used to bill the cardholder\u2019s account.\nThis field is returned for OCT transactions.\n" + }, + "settlementCurrency": { + "type": "string", + "maxLength": 3, + "description": "This is a multicurrency-only field. It contains a 3-digit numeric code that identifies the currency used by the issuer to bill the cardholder's account.\nThis field is returned for OCT transactions.\n" + }, + "surcharge": { + "type": "object", + "properties": { + "amount": { + "type": "string", + "maxLength": 15, + "description": "The surcharge amount is included in the total transaction amount but is passed in a separate field to the issuer and acquirer for tracking. The issuer can provide information about the surcharge amount to the customer.\n\nIf the amount is positive, then it is a debit for the customer.\nIf the amount is negative, then it is a credit for the customer.\n\n**NOTE**: This field is supported only for CyberSource through VisaNet (CtV) for Payouts. For CtV, the maximum string length is 8.\n\n#### PIN debit\nSurcharge amount that you are charging the customer for this transaction. If you include a surcharge amount\nin the request, you must also include the surcharge amount in the value for `orderInformation.amountDetails.totalAmount`.\n\nOptional field for transactions that use PIN debit credit or PIN debit purchase.\n" + } + } + } + } + }, + "shippingDetails": { + "type": "object", + "properties": { + "giftWrap": { + "type": "boolean", + "description": "Boolean that indicates whether the customer requested gift wrapping for this\npurchase. This field can contain one of the following\nvalues:\n- true: The customer requested gift wrapping.\n- false: The customer did not request gift wrapping.\n" + }, + "shippingMethod": { + "type": "string", + "maxLength": 10, + "description": "Shipping method for the product. Possible values:\n\n - `lowcost`: Lowest-cost service\n - `sameday`: Courier or same-day service\n - `oneday`: Next-day or overnight service\n - `twoday`: Two-day service\n - `threeday`: Three-day service\n - `pickup`: Store pick-up\n - `other`: Other shipping method\n - `none`: No shipping method because product is a service or subscription\n" + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "salesSlipNumber": { + "type": "integer", + "maximum": 99999, + "description": "Transaction identifier that is generated. You have the option of printing the sales slip number on the receipt.\nThis field is supported only on Cybersource through Visanet and JCN gateway.\n\nOptional field.\n\n#### Card Present processing message\nIf you included this field in the request, the returned value is the value that you sent in the request.\nIf you did not include this field in the request, the system generated this value for you.\n\nThe difference between this reply field and the `processorInformation.systemTraceAuditNumber` field is that the\nsystem generates the system trace audit number (STAN), and you must print the receipt number on the receipt;\nwhereas you can generate the sales slip number, and you can choose to print the sales slip number on the receipt.\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A Payment Type is an agreed means for a payee to receive legal tender from a payer. The way one pays for a commercial financial transaction. Examples: Card, Bank Transfer, Digital, Direct Debit.\nPossible values:\n- `CARD` (use this for a PIN debit transaction)\n- `CHECK` (use this for all eCheck payment transactions - ECP Debit, ECP Follow-on Credit, ECP StandAlone Credit)\n" + }, + "type": { + "type": "string", + "description": "Indicates the payment type used in this payment transaction. Example: credit card, check" + }, + "method": { + "type": "string", + "description": "Indicates the payment method used in this payment transaction." + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "id": { + "type": "string", + "description": "Unique identifier for the Customer token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "prefix": { + "type": "string", + "maxLength": 6, + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationMonth": { + "type": "string", + "maxLength": 2, + "description": "Two-digit month in which the payment card expires.\n\nFormat: `MM`.\n\nValid values: `01` through `12`. Leading 0 is required.\n\n#### Barclays and Streamline\nFor Maestro (UK Domestic) and Maestro (International) cards on Barclays and Streamline, this must be a valid value\n(`01` through `12`) but is not required to be a valid expiration date. In other words, an expiration date that is\nin the past does not cause CyberSource to reject your request. However, an invalid expiration date might cause\nthe issuer to reject your request.\n\n#### Encoded Account Numbers\nFor encoded account numbers (_type_=039), if there is no expiration date on the card, use `12`.\n\n#### FDMS Nashville\nRequired field.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "expirationYear": { + "type": "string", + "maxLength": 4, + "description": "Four-digit year in which the payment card expires.\n\nFormat: `YYYY`.\n\n#### Barclays and Streamline\nFor 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.\n\n#### Encoded Account Numbers\nFor encoded account numbers (**_type_**`=039`), if there is no expiration date on the card, use `2021`.\n\n#### FDMS Nashville\nRequired field.\n\n#### FDC Nashville Global and FDMS South\nYou can send in 2 digits or 4 digits. If you send in 2 digits, they must be the last 2 digits of the year.\n\n#### All other processors\nRequired if `pointOfSaleInformation.entryMode=keyed`. However, this field is optional if your account is configured\nfor relaxed requirements for address data and expiration date. **Important** It is your responsibility to determine\nwhether a field is required for the transaction you are requesting.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "startMonth": { + "type": "string", + "maxLength": 2, + "description": "Month of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: MM`. Possible values: 01 through 12.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "startYear": { + "type": "string", + "maxLength": 4, + "description": "Year of the start of the Maestro (UK Domestic) card validity period. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. `Format: YYYY`.\n\n**Note** The start date is not required for Maestro (UK Domestic) transactions.\n" + }, + "issueNumber": { + "type": "string", + "maxLength": 5, + "description": "Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card.\n\n**Note** The issue number is not required for Maestro (UK Domestic) transactions.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + }, + "accountEncoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the issuing bank that provided the customer\u2019s encoded account number. Contact your processor for the bank\u2019s ID.\n" + }, + "useAs": { + "type": "string", + "maxLength": 20, + "description": "Flag that specifies the type of account associated with the card. The cardholder provides this information\nduring the payment process.\n\nPossible values:\n\n - C: Credit transaction\n - D: Debit transaction\n\nThis field is supported only for all card Types on Visa Platform Connect.\n\nThis field is required for:\n - Debit transactions on Cielo and Comercio Latino.\n - Transactions with Brazilian-issued cards on CyberSource through VisaNet.\n\n**Note** The value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP07 TCR0\n- Position: 51\n- Field: Combination Card Transaction Identifier\n" + } + } + }, + "invoice": { + "type": "object", + "properties": { + "number": { + "type": "string", + "description": "Invoice Number." + }, + "barcodeNumber": { + "type": "string", + "description": "Barcode Number." + }, + "expirationDate": { + "type": "string", + "description": "Expiration Date." + } + } + }, + "bank": { + "type": "object", + "properties": { + "routingNumber": { + "type": "string", + "description": "Bank routing number. This is also called the transit number.\n\nFor details, see `ecp_rdfi` field description in the [Electronic Check Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/)\n" + }, + "branchCode": { + "type": "string", + "description": "Code used to identify the branch of the customer\u2019s bank.\nRequired for some countries if you do not or are not\nallowed to provide the IBAN. Use this field only when\nscoring a direct debit transaction.\n\nFor all possible values, see the `branch_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "swiftCode": { + "type": "string", + "description": "Bank\u2019s SWIFT code. You can use this field only when scoring a direct debit transaction.\nRequired only for crossborder transactions.\n\nFor all possible values, see the `bank_swiftcode` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "bankCode": { + "type": "string", + "description": "Country-specific code used to identify the customer\u2019s\nbank. Required for some countries if you do not or are not\nallowed to provide the IBAN instead. You can use this field\nonly when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_code` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "iban": { + "type": "string", + "maxLength": 50, + "description": "International Bank Account Number (IBAN) for the bank account. For some countries you can provide this number instead of the traditional bank account information. You can use this field only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_iban` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "account": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the customer\u2019s payment account number.\n" + }, + "prefix": { + "type": "string", + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" + }, + "checkNumber": { + "type": "string", + "maxLength": 8, + "description": "Check number.\n\nChase Paymentech Solutions - Optional.\nCyberSource ACH Service - Not used.\nRBS WorldPay Atlanta - Optional on debits. Required on credits.\nTeleCheck - Strongly recommended on debit requests. Optional on credits.\n" + }, + "type": { + "type": "string", + "maxLength": 1, + "description": "Account type.\n\nPossible values:\n - **C**: Checking.\n - **G**: General ledger. This value is supported only on Wells Fargo ACH.\n - **S**: Savings (U.S. dollars only).\n - **X**: Corporate checking (U.S. dollars only).\n" + }, + "name": { + "type": "string", + "description": "Name used on the bank account. You can use this field only when scoring a direct debit transaction\n" + }, + "checkDigit": { + "type": "string", + "description": "Code used to validate the customer\u2019s account number.\nRequired for some countries if you do not or are not\nallowed to provide the IBAN instead. You may use this\nfield only when scoring a direct debit transaction.\n\nFor all possible values, see the `bank_check_digit` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n" + }, + "encoderId": { + "type": "string", + "maxLength": 3, + "description": "Identifier for the bank that provided the customer\u2019s encoded account number.\n\nTo obtain the bank identifier, contact your processor.\n\nFor details, see `account_encoder_id` request-level field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "mandate": { + "type": "object", + "properties": { + "referenceNumber": { + "type": "string", + "description": "Unique value generated by CyberSource that identifies the transaction. Use this value to identify transactions in the Collections Report, which provides settlement\ninformation.\n\nFor details, see the `direct_debit_reconciliation_reference_number` reply field description in [Ingenico ePayments Developer Guide For Direct Debits.](https://apps.cybersource.com/library/documentation/dev_guides/Ingenico_ePayments_Dev/html/)\n" + }, + "recurringType": { + "type": "string", + "description": "Whether the direct debit is the first or last direct debit associated with the mandate, or one in between.\nRequired only for the United Kingdom.\nPossible values:\n- `001`: First direct debit associated with this mandate. Use this value if a one-time direct debit).\n- `002`: Subsequent direct debits associated with this mandate.\n- `003`: Last direct debit associated with this mandate.\n\nFor details, see the `direct_debit_recurring_type` request field description in [Ingenico ePayments Developer Guide For Direct Debits.](https://apps.cybersource.com/library/documentation/dev_guides/Ingenico_ePayments_Dev/html/)\n" + }, + "id": { + "type": "string", + "description": "The mandate ID. Required only for the United Kingdom.\n\nFor details, see the `mandate_id` request field description in [Ingenico ePayments Developer Guide For Direct Debits.](https://apps.cybersource.com/library/documentation/dev_guides/Ingenico_ePayments_Dev/html/)\n" + } + } + } + } + }, + "accountFeatures": { + "type": "object", + "properties": { + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "previousBalanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "currency": { + "type": "string", + "maxLength": 5, + "description": "Currency of the remaining balance on the account. For the possible values, see the [ISO Standard Currency Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/currencies.pdf)\n\nReturned by authorization service.\n\n#### PIN debit\nCurrency of the remaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 12, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "fluidData": { + "type": "object", + "properties": { + "descriptor": { + "type": "string", + "maxLength": 128, + "description": "The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values:\nSamsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ=\nNote: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor.\nUsed by Authorization and Standalone Credits. Required for authorizations and standalone credits.\n\nCard Present processing:\nFormat of the encrypted payment data.\nThe value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`.\nThe value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field.\nIf paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==`\nIf paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504`\n" + } + } + } + } + }, + "paymentInsightsInformation": { + "type": "object", + "properties": { + "responseInsights": { + "type": "object", + "properties": { + "category": { + "type": "string", + "maxLength": 60, + "description": "Categorization of response message from processor\n\nPossible Values:\n- `APPROVED`\n- `ISSUER_WILL_NEVER_APPROVE`\n- `ISSUER_CANT_APPROVE_AT_THIS_TIME`\n- `ISSUER_CANT_APPROVE_WITH_THESE_DETAILS`\n- `GENERIC_ERROR`\n- `OTHERS`\n- `MATCH_NOT_FOUND`\n" + }, + "categoryCode": { + "type": "string", + "maxLength": 2, + "description": "Categorization Code of response message from processor\n\nPossible Values:\n- `01` : Issuer Will Never Approve\n- `02` : Issuer Can't Approve at this Time\n- `03` : Issuer Can't Approve with these Details\n- `04` : Generic Error\n- `98` : Others\n- `99` : Payment Insights Response Category Match Not Found\n" + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "industryDataType": { + "type": "string", + "maxLength": 20, + "description": "Indicates that the transaction includes industry-specific data.\n\nPossible Values:\n- `airline`\n- `restaurant`\n- `lodging`\n- `auto_rental`\n- `transit`\n- `healthcare_medical`\n- `healthcare_transit`\n- `transit`\n\n#### Card Present, Airlines and Auto Rental\nYou must set this field to `airline` in order for airline data to be sent to the processor. For example, if this\nfield is not set to `airline` or is not included in the request, no airline data is sent to the processor.\n\nYou must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field\nis not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor.\n\nYou must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this\nfield is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor.\n\nRestaurant data is supported only on CyberSource through VisaNet.\n" + }, + "paymentSolution": { + "type": "string", + "maxLength": 50, + "description": "Type of digital payment solution for the transaction.\n" + }, + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "commerceIndicatorLabel": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "businessApplicationId": { + "type": "string", + "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" + }, + "authorizationOptions": { + "type": "object", + "properties": { + "authType": { + "type": "string", + "maxLength": 15, + "description": "Authorization type. Possible values:\n\n - `AUTOCAPTURE`: automatic capture.\n - `STANDARDCAPTURE`: standard capture.\n - `VERBAL`: forced capture. Include it in the payment request for a forced capture. Include it in the capture request for a verbal payment.\n\n#### Asia, Middle East, and Africa Gateway; Cielo; Comercio Latino; and CyberSource Latin American Processing\nSet this field to `AUTOCAPTURE` and include it in a bundled request to indicate that you are requesting an automatic capture. If your account is configured to enable automatic captures, set this field to `STANDARDCAPTURE` and include it in a standard authorization or bundled request to indicate that you are overriding an automatic capture. For more information, see the `auth_type` field description in [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Forced Capture\nSet this field to `VERBAL` and include it in the authorization request to indicate that you are performing a forced capture; therefore, you receive the authorization code outside the CyberSource system.\n\n#### Verbal Authorization\nSet this field to `VERBAL` and include it in the capture request to indicate that the request is for a verbal authorization. For more information, see \"Verbal Authorizations\" in [Credit Card Services Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html).\n" + }, + "initiator": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "This field indicates whether the transaction is a merchant-initiated transaction or customer-initiated transaction.\n\nValid values:\n- **customer**\n- **merchant**\n" + }, + "credentialStoredOnFile": { + "type": "string", + "description": "Indicates to the issuing bank two things:\n- The merchant has received consent from the cardholder to store their card details on file\n- The merchant wants the issuing bank to check out the card details before the merchant initiates their first transaction for this cardholder.\nThe purpose of the merchant-initiated transaction is to ensure that the cardholder\u2019s credentials are valid (that the card is not stolen or has restrictions) and that the card details are good to be stored on the merchant\u2019s file for future transactions.\n\nValid values:\n- `Y` means merchant will use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n- `N` means merchant will not use this transaction to store payment credentials for follow-up merchant-initiated transactions.\n\nFor details, see `subsequent_auth_first` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**NOTE:** The value for this field does not correspond to any data in the TC 33 capture file5.\n\nThis field is supported only for Visa transactions on CyberSource through VisaNet.\n" + }, + "storedCredentialUsed": { + "type": "string", + "description": "Indicates to an issuing bank whether a merchant-initiated transaction came from a card that was already stored on file.\n\nPossible values:\n- **Y** means the merchant-initiated transaction came from a card that was already stored on file.\n- **N** means the merchant-initiated transaction came from a card that was not stored on file.\n" + }, + "merchantInitiatedTransaction": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "maxLength": 1, + "description": "Reason for the merchant-initiated transaction or incremental authorization. Possible values:\n- `1`: Resubmission\n- `2`: Delayed charge\n- `3`: Reauthorization for split shipment\n- `4`: No show\n- `5`: Account top up\nThis field is required only for the five kinds of transactions in the preceding list.\nThis field is supported only for merchant-initiated transactions and incremental authorizations.\n\n#### CyberSource through VisaNet\nThe value for this field corresponds to the following data in the TC 33 capture file5:\n- Record: CP01 TCR0\n- Position: 160-163\n- Field: Message Reason Code\n\n#### All Processors\nFor details, see `subsequent_auth_reason` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "previousTransactionId": { + "type": "string", + "maxLength": 15, + "description": "Network transaction identifier that was returned in the payment response field _processorInformation.transactionID_\nin the reply message for either the original merchant-initiated payment in the series or the previous\nmerchant-initiated payment in the series.\n\nIf the current payment request includes a token instead of an account number, the following time limits apply for the value of this field:\n- For a **resubmission**, the transaction ID must be less than 14 days old.\n- For a **delayed charge** or **reauthorization**, the transaction ID must be less than 30 days old.\n\n**NOTE**: The value for this field does not correspond to any data in the TC 33 capture file5. This field is supported\nonly for Visa transactions on CyberSource through VisaNet.\n" + }, + "originalAuthorizedAmount": { + "type": "string", + "maxLength": 61, + "description": "Amount of the original authorization.\n\nThis field is supported only for Apple Pay, Google Pay, and Samsung Pay transactions with Discover on FDC Nashville Global and Chase Paymentech.\n\nSee \"Recurring Payments,\" and \"Subsequent Authorizations,\" field description in the [Payment Network Tokenization\nUsing the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/tokenization_SCMP_API/html/wwhelp/wwhimpl/js/html/wwhelp.htm)\n" + } + } + } + } + } + } + }, + "bankTransferOptions": { + "type": "object", + "properties": { + "secCode": { + "type": "string", + "description": "Specifies the authorization method for the transaction.\n\nPossible values:\n- `ARC`: account receivable conversion\n- `CCD`: corporate cash disbursement\n- `POP`: point of purchase conversion\n- `PPD`: prearranged payment and deposit entry\n- `TEL`: telephone-initiated entry\n- `WEB`: internet-initiated entry\n" + } + } + }, + "japanPaymentOptions": { + "type": "object", + "properties": { + "paymentMethod": { + "type": "string", + "maxLength": 2, + "description": "This value is a 2-digit code indicating the payment method.\nUse Payment Method Code value that applies to the tranasction.\n- 10 (One-time payment)\n- 21, 22, 23, 24 (Bonus(one-time)payment)\n- 61 (Installment payment)\n- 31, 32, 33, 34 (Integrated (Bonus + Installment)payment)\n- 80 (Revolving payment)\n" + }, + "terminalId": { + "type": "string", + "maxLength": 13, + "description": "Unique Japan Credit Card Association (JCCA) terminal identifier.\n\nThe difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define\n`pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is\ndefined by the JCCA and is used only in Japan.\n\nThis field is supported only on CyberSource through VisaNet and JCN Gateway.\n\nOptional field.\n" + }, + "businessName": { + "type": "string", + "maxLength": 25, + "description": "Business name in Japanese characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + }, + "businessNameKatakana": { + "type": "string", + "maxLength": 25, + "description": "Business name in Katakana characters. This field is supported only on JCN Gateway and for the Sumitomo Mitsui Card Co. acquirer on CyberSource through VisaNet.\n" + } + } + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "processor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\n" + } + } + }, + "multiProcessorRouting": { + "type": "array", + "description": "An array of object that contains the list of acquirer response codes & reasons if a transaction is routed to multiple acquirers.", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "reasonCode": { + "type": "string", + "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" + }, + "sequence": { + "type": "string", + "description": "The order in which the transaction was routed to the processor\n" + } + } + } + }, + "transactionId": { + "type": "string", + "maxLength": 50, + "description": "Network transaction identifier (TID). You can use this value to identify a specific transaction when you are\ndiscussing the transaction with your processor. Not all processors provide this value.\n\nReturned by the authorization service.\n\n#### PIN debit\nTransaction identifier generated by the processor.\n\nReturned by PIN debit credit.\n\n#### GPX\nProcessor transaction ID.\n\n#### Cielo\nFor Cielo, this value is the non-sequential unit (NSU) and is supported for all transactions. The value is generated by Cielo or the issuing bank.\n\n#### Comercio Latino\nFor Comercio Latino, this value is the proof of sale or non-sequential unit (NSU) number generated by the acquirers Cielo and Rede, or the issuing bank.\n\n#### CyberSource through VisaNet and GPN\nFor details about this value for CyberSource through VisaNet and GPN, see \"Network Transaction Identifiers\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Moneris\nThis value identifies the transaction on a host system. It contains the following information:\n- Terminal used to process the transaction\n- Shift during which the transaction took place\n- Batch number\n- Transaction number within the batch\nYou must store this value. If you give the customer a receipt, display this value on the receipt.\n\n**Example** For the value\n66012345001069003:\n- Terminal ID = 66012345\n- Shift number = 001\n- Batch number = 069\n- Transaction number = 003\n" + }, + "networkTransactionId": { + "type": "string", + "description": "Same value as `processorInformation.transactionId`" + }, + "retrievalReferenceNumber": { + "type": "string", + "maxLength": 20, + "description": "#### Ingenico ePayments\nUnique number that CyberSource generates to identify the transaction. You can use this value to identify transactions in the Ingenico ePayments Collections Report, which provides settlement information. Contact customer support for information about the report.\n\n### CyberSource through VisaNet\nRetrieval request number.\n" + }, + "responseId": { + "type": "string", + "description": "Response ID sent from the processor.\n" + }, + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + }, + "responseCode": { + "type": "string", + "maxLength": 10, + "description": "For most processors, this is the error message sent directly from the bank. Returned only when the processor\nreturns this value.\n\n**Important** Do not use this field to evaluate the result of the authorization.\n\n#### PIN debit\nResponse value that is returned by the processor or bank.\n**Important** Do not use this field to evaluate the results of the transaction request.\n\nReturned by PIN debit credit, PIN debit purchase, and PIN debit reversal.\n\n#### AIBMS\nIf this value is `08`, you can accept the transaction if the customer provides you with identification.\n\n#### Atos\nThis value is the response code sent from Atos and it might also include the response code from the bank.\nFormat: `aa,bb` with the two values separated by a comma and where:\n- `aa` is the two-digit error message from Atos.\n- `bb` is the optional two-digit error message from the bank.\n\n#### Comercio Latino\nThis value is the status code and the error or response code received from the processor separated by a colon.\nFormat: [status code]:E[error code] or [status code]:R[response code]\nExample `2:R06`\n\n#### JCN Gateway\nProcessor-defined detail error code. The associated response category code is in the `processorInformation.responseCategoryCode` field.\nString (3)\n" + }, + "avs": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 1, + "description": "AVS result code.\n\nReturned by authorization service.\n" + }, + "codeRaw": { + "type": "string", + "maxLength": 10, + "description": "AVS result code sent directly from the processor. Returned only when the processor returns this value.\n**Important** Do not use this field to evaluate the result of AVS. Use for debugging purposes only.\n\nReturned by authorization service.\n" + } + } + }, + "cardVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 1, + "description": "CVN result code.\n\nFor details, see the `auth_cv_result` reply field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "achVerification": { + "type": "object", + "properties": { + "resultCode": { + "type": "string", + "maxLength": 2, + "description": "Results from the ACH verification service.\nFor details about this service and the possible values for the results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + }, + "resultCodeRaw": { + "type": "string", + "maxLength": 10, + "description": "Raw results from the ACH verification service.\nFor details about this service and the possible values for the raw results, see \"ACH Verification\" and \"Verification Codes\" in the [Electronic Check Services Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/EChecks_SCMP_API/html/).\n" + } + } + }, + "electronicVerificationResults": { + "type": "object", + "properties": { + "email": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s email address.\n\nFor details, see `auth_ev_email` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "emailRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s email address." + }, + "name": { + "type": "string", + "maxLength": 30, + "description": "Mapped Electronic Verification response code for the customer\u2019s name.\n" + }, + "nameRaw": { + "type": "string", + "maxLength": 30, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s name.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s phone number.\n\nFor details, see `auth_ev_phone_number` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "phoneNumberRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s phone number." + }, + "street": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s street address.\n\nFor details, see `auth_ev_street` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "streetRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s street address." + }, + "postalCode": { + "type": "string", + "maxLength": 1, + "description": "Mapped Electronic Verification response code for the customer\u2019s postal code.\n\nFor details, see `auth_ev_postal_code` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "postalCodeRaw": { + "type": "string", + "maxLength": 1, + "description": "Raw Electronic Verification response code from the processor for the customer\u2019s postal code." + } + } + }, + "systemTraceAuditNumber": { + "type": "string", + "maxLength": 6, + "description": "This field is returned only for **American Express Direct** and **CyberSource through VisaNet**.\nReturned by authorization and incremental authorization services.\n\n#### American Express Direct\n\nSystem trace audit number (STAN). This value identifies the transaction and is useful when investigating a\nchargeback dispute.\n\n#### CyberSource through VisaNet\n\nSystem trace number that must be printed on the customer\u2019s receipt.\n" + }, + "responseCodeSource": { + "type": "string", + "maxLength": 1, + "description": "Used by Visa only and contains the response source/reason code that identifies the source of the response decision.\n" + }, + "paymentAccountReferenceNumber": { + "type": "string", + "maxLength": 32, + "description": "Visa-generated reference number that identifies a card-present transaction for which you provided one of the\nfollowing:\n\n - Visa primary account number (PAN)\n - Visa-generated token for a PAN\n\nThis reference number serves as a link to the cardholder account and to all transactions for that account.\nThis reply field is returned only for CyberSource through VisaNet.\n\n**Note** On CyberSource through VisaNet, the value for this field corresponds to the following data in the TC 33 capture file:\n- Record: CP01 TCR8\n- Position: 79-110\n- Field: Payment Account Reference\n\nThe TC 33 Capture file contains information about the purchases and refunds that a merchant submits to CyberSource.\nCyberSource through VisaNet creates the TC 33 Capture file at the end of the day and sends it to the merchant\u2019s acquirer,\nwho uses this information to facilitate end-of-day clearing processing with payment networks.\n" + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + }, + "entryMode": { + "type": "string", + "maxLength": 11, + "description": "Method of entering payment card information into the POS terminal. Possible values:\n\n - `contact`: Read from direct contact with chip card.\n - `contactless`: Read from a contactless interface using chip data.\n - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct.\n - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct.\n - `swiped`: Read from credit card magnetic stripe.\n\nThe `contact`, `contactless`, and `msd` values are supported only for EMV transactions.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### Card Present\nCard present information about EMV applies only to credit card processing and PIN debit processing. All other\ncard present information applies only to credit card processing.\n\n#### PIN debit\nRequired for a PIN debit purchase and a PIN debit credit request.\n" + }, + "terminalCapability": { + "type": "integer", + "minimum": 1, + "maximum": 5, + "description": "POS terminal\u2019s capability. Possible values:\n\n - `1`: Terminal has a magnetic stripe reader only.\n - `2`: Terminal has a magnetic stripe reader and manual entry capability.\n - `3`: Terminal has manual entry capability only.\n - `4`: Terminal can read chip cards.\n - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards.\n\nFor an EMV transaction, the value of this field must be `4` or `5`.\n\n#### PIN debit\nRequired for PIN debit purchase and PIN debit credit request.\n\n#### Used by\n**Authorization**\nRequired for the following processors:\n- American Express Direct\n- Chase Paymentech Solutions\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- FDMS Nashville\n- OmniPay Direct\n- SIX\n- Worldpay VAP\n\nOptional for the following processors:\n- CyberSource through VisaNet\n- GPN\n- GPX\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n" + }, + "cardholderVerificationMethodUsed": { + "type": "integer", + "description": "Method that was used to verify the cardholder's identity. Possible values:\n\n - `0`: No verification\n - `1`: Signature\n - `2`: PIN\n - `3`: Cardholder device CVM\n" + }, + "emv": { + "type": "object", + "properties": { + "tags": { + "type": "string", + "maxLength": 1998, + "description": "EMV data that is transmitted from the chip card to the issuer, and from the issuer to the chip card. The EMV\ndata is in the tag-length-value format and includes chip card tags, terminal tags, and transaction detail tags.\n\nFor information about the individual tags, see the \u201cApplication Specification\u201d section in the EMV 4.3 Specifications: http://emvco.com\n\n**Note** Card present information about EMV applies only to credit card processing and PIN debit processing.\nAll other card present information applies only to credit card processing. PIN debit processing is available only\non FDC Nashville Global.\n\n**Important** The following tags contain sensitive information and **must not** be included in this field:\n\n - `56`: Track 1 equivalent data\n - `57`: Track 2 equivalent data\n - `5A`: Application PAN\n - `5F20`: Cardholder name\n - `5F24`: Application expiration date (This sensitivity has been relaxed for Credit Mutuel-CIC, American Express Direct, FDC Nashville Global, First Data Merchant Solutions, and SIX)\n - `99`: Transaction PIN\n - `9F0B`: Cardholder name (extended)\n - `9F1F`: Track 1 discretionary data\n - `9F20`: Track 2 discretionary data\n\nFor captures, this field is required for contact EMV transactions. Otherwise, it is optional.\n\nFor credits, this field is required for contact EMV stand-alone credits and contactless EMV stand-alone credits.\nOtherwise, it is optional.\n\n**Important** For contact EMV captures, contact EMV stand-alone credits, and contactless EMV stand-alone credits,\nyou must include the following tags in this field. For all other types of EMV transactions, the following tags\nare optional.\n\n - `95`: Terminal verification results\n - `9F10`: Issuer application data\n - `9F26`: Application cryptogram\n\n\n#### CyberSource through VisaNet\n- In Japan: 199 bytes\n- In other countries: String (252)\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n\n#### JCN Gateway\nThe following tags must be included:\n- `4F`: Application identifier\n- `84`: Dedicated file name\n\nData length: 199 bytes\n\n#### All other processors:\nString (999)\n\n#### Used by\nAuthorization: Optional\nAuthorization Reversal: Optional\nCredit: Optional\nPIN Debit processing (purchase, credit and reversal): Optional\n" + } + } + } + } + }, + "riskInformation": { + "type": "object", + "properties": { + "profile": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the profile.\n" + }, + "decision": { + "type": "string", + "description": "Decision returned by the profile; this field contains one of these values:\n- ACCEPT\n- REJECT\n- REVIEW\n" + } + } + }, + "rules": { + "type": "array", + "items": { + "type": "object", + "description": "Names of one or more rules that were processed, and the decisions made by the rules.", + "properties": { + "name": { + "type": "string", + "maxLength": 255, + "description": "Description of the rule as it appears in the Profile Editor." + }, + "decision": { + "type": "string", + "maxLength": 255, + "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" + } + } + } + }, + "passiveProfile": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the profile.\n" + }, + "decision": { + "type": "string", + "description": "Decision returned by the profile; this field contains one of these values:\n- ACCEPT\n- REJECT\n- REVIEW\n" + } + } + }, + "passiveRules": { + "type": "array", + "items": { + "type": "object", + "description": "Names of one or more rules that were processed, and the decisions made by the rules.", + "properties": { + "name": { + "type": "string", + "maxLength": 255, + "description": "Description of the rule as it appears in the Profile Editor." + }, + "decision": { + "type": "string", + "maxLength": 255, + "description": "Summarizes the result for the rule according to the setting that you chose in the Profile Editor.\nThis field can contain one of the following values:\n- `IGNORE`\n- `REVIEW`\n- `REJECT`\n- `ACCEPT`\n" + } + } + } + }, + "score": { + "type": "object", + "properties": { + "factorCodes": { + "type": "array", + "description": "Array of factor codes.", + "items": { + "type": "string", + "description": "Represents a factor code." + } + }, + "result": { + "type": "integer", + "description": "The description for this field is not available.\n" + } + } + }, + "localTime": { + "type": "string", + "description": "Time that the transaction was submitted in local time. Generated by Cybersource." + } + } + }, + "senderInformation": { + "type": "object", + "properties": { + "referenceNumber": { + "type": "string", + "maxLength": 19, + "description": "Reference number generated by you that uniquely identifies the sender." + } + } + }, + "tokenInformation": { + "type": "object", + "properties": { + "customer": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customer token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "paymentInstrument": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Payment Instrument token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "shippingAddress": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Customers Shipping Address token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 1, + "maxLength": 32 + } + } + }, + "instrumentIdentifier": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the Instrument Identifier token that was created as part of a bundled TOKEN_CREATE action.\n", + "minLength": 12, + "maxLength": 32 + } + } + } + } + }, + "_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." + } + } + }, + "relatedTransactions": { + "type": "array", + "items": { + "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." + } + } + } + } + } + } + }, + "example": { + "id": "5330579740206278601009", + "rootId": "5330571038726320201013", + "reconciliationId": "53703847LK9LPPXY", + "merchantId": "pa_rbsworldpay", + "submitTimeUtc": "2018-07-31T17:26:14Z", + "applicationInformation": { + "status": "PENDING", + "reasonCode": "100", + "rCode": "1", + "rFlag": "SOK", + "applications": [ + { + "name": "ics_bill", + "status": "PENDING", + "reasonCode": "100", + "rCode": "1", + "rFlag": "SOK", + "reconciliationId": "53703847LK9LPPXY", + "rMessage": "Request was processed successfully.", + "returnCode": 1260000 + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "123456", + "hashedPassword": "fhjfhj" + }, + "clientReferenceInformation": { + "code": "ECERT001", + "applicationVersion": "1.0", + "applicationName": "SCMP API", + "applicationUser": "ng_paymentech", + "partner": { + "solutionId": "89012345", + "thirdPartyCertificationNumber": "123456789012" + }, + "comments": "test comment" + }, + "consumerAuthenticationInformation": { + "eciRaw": "02", + "cavv": "12345", + "xid": "12345678", + "transactionId": "00152259513040478521", + "strongAuthentication": { + "lowValueExemptionIndicator": "1", + "riskAnalysisExemptionIndicator": "1", + "trustedMerchantExemptionIndicator": "1", + "secureCorporatePaymentIndicator": "1", + "delegatedAuthenticationExemptionIndicator": "1" + } + }, + "deviceInformation": { + "ipAddress": "1.10.10.10", + "hostName": "cybs test", + "cookiesAccepted": "no" + }, + "errorInformation": { + "reason": "1", + "message": "abc", + "details": [ + { + "field": "xyz", + "reason": "1" + } + ] + }, + "installmentInformation": { + "numberOfInstallments": 0, + "identifier": "1234567" + }, + "fraudMarkingInformation": { + "reason": "suspected" + }, + "healthCareInformation": { + "amountDetails": { + "amountType": "healthcare-transit", + "amount": "100.00" + } + }, + "merchantDefinedInformation": [ + { + "key": "abc", + "value": "xyz" + } + ], + "merchantInformation": { + "merchantDescriptor": { + "name": "ng_paymentech" + } + }, + "orderInformation": { + "billTo": { + "firstName": "JAMES", + "lastName": "DOUGH", + "middleName": "ROY", + "nameSuffix": "Mr", + "address1": "600 Morgan Falls Road", + "address2": "Room 2-2123", + "locality": "Atlanta", + "administrativeArea": "GA", + "postalCode": "30350", + "company": "cybersource", + "email": "jdough@cybersource.com", + "country": "US", + "title": "Manager", + "phoneNumber": "6509656111" + }, + "shipTo": { + "firstName": "Test", + "lastName": "TSS", + "address1": "201S.DivisionSt._1", + "address2": "Suite500", + "locality": "Austin", + "administrativeArea": "TX", + "postalCode": "78750", + "company": "cybs", + "country": "US", + "phoneNumber": "5120000000" + }, + "lineItems": [ + { + "productCode": "code2", + "productName": "name2", + "productSku": "KKY", + "taxAmount": "3.00", + "quantity": 2, + "unitPrice": "5.00", + "fulfillmentType": "abc" + } + ], + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD", + "taxAmount": "5", + "authorizedAmount": "100.00", + "settlementAmount": "97.50", + "settlementCurrency": "USD", + "surcharge": "1.11" + }, + "shippingDetails": { + "giftWrap": "none", + "shippingMethod": "xyz" + }, + "invoiceDetails": { + "salesSlipNumber": "12345" + } + }, + "paymentInformation": { + "paymentType": { + "name": "paymentProcessor1234", + "type": "Credit", + "method": "method name" + }, + "customer": { + "customerId": "123" + }, + "id": "1C56E3115482033FEA539399130A4BC2", + "card": { + "suffix": "1111", + "prefix": "123", + "expirationMonth": "10", + "expirationYear": "2017", + "startMonth": "11", + "startYear": "2011", + "issueNumber": "1234", + "type": "001", + "accountEncoderId": "12", + "useAs": "overidepaymentmethod" + }, + "invoice": { + "number": "BOLETONUM34567890123barcode12345678901231234567890", + "barcodeNumber": "barcode1234567890123barcode12345678901231234567890", + "expirationDate": "2018-01-07T07:59:59.999Z" + }, + "bank": { + "routingNumber": "routing123", + "branchCode": "branchcode1234567", + "swiftCode": "bankswift1", + "bankCode": "bankcode1212345", + "iban": "SUFF", + "account": { + "suffix": "1111", + "prefix": "123456", + "checkNumber": "123456", + "type": "check", + "name": "BankAccountName123456789012345", + "checkDigit": "CD", + "encoderId": "AID" + }, + "mandate": { + "referenceNumber": "mandaterefnum1234567", + "recurringType": "direct1234", + "id": "mandateId1" + } + }, + "accountFeatures": { + "balanceAmount": "3.00", + "previousBalanceAmount": "2.00", + "currency": "usd" + }, + "paymentInstrument": { + "id": "1C56E3115482033FEA539399130A4BC2" + }, + "instrumentIdentifier": { + "id": "1C56E3115482033FEA539399130A4BC2" + }, + "shippingAddress": { + "id": "1C56E3115482033FEA539399130A4BC2" + }, + "fluidData": { + "descriptor": "bluefin" + } + }, + "paymentInsightsInformation": { + "responseInsights": { + "category": "ISSUER_CANNOT_APPROVE_WITH_THESE_DETAILS", + "categoryCode": "03" + } + }, + "processingInformation": { + "industryDataType": "healthcare_transit", + "paymentSolution": "Visa", + "commerceIndicator": "7", + "commerceIndicatorLabel": "Motto", + "businessApplicationId": "12345", + "authorizationOptions": { + "authType": "O", + "initiator": { + "type": "Y", + "credentialStoredOnFile": "Y", + "storedCredentialUsed": "Y", + "merchantInitiatedTransaction": { + "reason": "1", + "previousTransactionId": "networktransactionid67890", + "originalAuthorizedAmount": "100.00" + } + } + }, + "bankTransferOptions": { + "secCode": "web" + }, + "japanPaymentOptions": { + "paymentMethod": "1", + "terminalId": "1234567890123", + "businessName": "shop_local", + "businessNameKatakana": "shop_katakana" + } + }, + "processorInformation": { + "processor": { + "name": "paymentProcessor1234" + }, + "multiProcessorRouting": [ + { + "name": "paymentProcessor0123", + "responseCode": "responsecode01234567", + "reasonCode": "233", + "sequence": "1" + }, + { + "name": "paymentProcessor1234", + "responseCode": "responsecode12345678", + "reason": "100", + "sequence": "2" + } + ], + "transactionId": "processortransactionid123", + "networkTransactionId": "networktransactionid67890", + "responseId": "1212", + "approvalCode": "authcode1234567", + "retrievalReferenceNumber": "122908889379", + "responseCode": "responsecode12345678", + "avs": { + "code": "ARM", + "codeRaw": "avsResults" + }, + "cardVerification": { + "resultCode": "Y" + }, + "achVerification": { + "resultCode": "rspcodmap", + "resultCodeRaw": "responsecode12345678" + }, + "electronicVerificationResults": { + "email": "email@email.com", + "emailRaw": "emailRaw12", + "name": "ename", + "nameRaw": "enameRaw12", + "phoneNumber": "01179", + "phoneNumberRaw": "9925551608", + "street": "123 street", + "streetRaw": "SteertRaw12", + "postalCode": "78717", + "postalCodeRaw": "1166678717" + }, + "systemTraceAuditNumber": "123456", + "responseCodeSource": "0", + "paymentAccountReferenceNumber": "abc4545345dfsf2342342wfa" + }, + "pointOfSaleInformation": { + "terminalId": "1", + "entryMode": "posentrymode1234512", + "terminalCapability": "integer", + "cardholderVerificationMethodUsed": 2, + "emv": { + "tags": "5F25" + } + }, + "riskInformation": { + "profile": { + "name": "abc", + "decision": "xyz" + }, + "rules": [ + { + "name": "abc2", + "decision": "xyz2" + } + ], + "passiveProfile": { + "name": "abc3", + "decision": "xyz3" + }, + "passiveRules": [ + { + "name": "abc4", + "decision": "xyz4" + } + ], + "localTime": "2018-07-31T17:26:14Z", + "score": { + "factorCodes": [ + "AB" + ], + "result": 10 + } + }, + "senderInformation": { + "referenceNumber": "senderRefNumber1" + }, + "tokenInformation": { + "customer": { + "id": "1C56E3115482033FEA539399130A4BC2" + }, + "paymentInstrument": { + "id": "1C56E3115482033FEA539399130A4BC2" + }, + "instrumentIdentifier": { + "id": "1C56E3115482033FEA539399130A4BC2" + }, + "shippingAddress": { + "id": "1C56E3115482033FEA539399130A4BC2" + } + }, + "_links": { + "self": { + "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601009", + "method": "GET" + }, + "relatedTransactions": [ + { + "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601010", + "method": "GET" + }, + { + "href": "https://api.visa.com/payment/tss/v2/transactions/5330579740206278601011", + "method": "GET" + } + ] + } + } + } + }, + "404": { + "description": "The specified resource not found in the system." + }, + "500": { + "description": "Unexpected server error" + } + } + } + }, + "/tss/v2/searches": { + "post": { + "summary": "Create a Search Request", + "description": "Create a search request.\n", + "tags": [ + "SearchTransactions" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "operationId": "createSearch", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Search", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api.html" + }, + "parameters": [ + { + "name": "createSearchRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "save": { + "type": "boolean", + "description": "Indicates whether or not you want to save this search request for future use. The options are:\n\n* `true`\n* `false` (default value)\n\nIf set to `true`, this field returns\n`searchID` in the response. You can use this value to retrieve the details of the saved search.\n" + }, + "name": { + "type": "string", + "description": "Name of this search. When `save` is set to `true`, this search is saved with this name.\n" + }, + "timezone": { + "type": "string", + "description": "Merchant\u2019s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`\n" + }, + "query": { + "type": "string", + "description": "String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.\n" + }, + "offset": { + "type": "integer", + "description": "Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset.\n\nFor example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this:\n\n`offset=0`\n`offset=5`\n`offset=10`\n\n**Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.\n" + }, + "limit": { + "type": "integer", + "description": "Controls the maximum number of items that may be returned for a single request. The default is 20, the maximum is 2000.\n" + }, + "sort": { + "type": "string", + "description": "A comma separated list of the following form:\n\n`submitTimeUtc:desc`\n" + } + }, + "example": { + "save": "false", + "name": "Search By Code", + "timezone": "America/Chicago", + "query": "clientReferenceInformation.code:123456 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", + "offset": 0, + "limit": 100, + "sort": "id:asc, submitTimeUtc:asc" + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "type": "object", + "title": "tssV2TransactionsPost201Response", + "properties": { + "searchId": { + "type": "string", + "maxLength": 60, + "description": "An unique identification number assigned by CyberSource to identify each Search request." + }, + "save": { + "type": "boolean", + "description": "Indicates whether or not you want to save this search request for future use. The options are:\n\n* `true`\n* `false` (default value)\n\nIf set to `true`, this field returns\n`searchID` in the response. You can use this value to retrieve the details of the saved search.\n" + }, + "name": { + "type": "string", + "description": "Name of this search. When `save` is set to `true`, this search is saved with this name.\n" + }, + "timezone": { + "type": "string", + "description": "Merchant\u2019s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`\n" + }, + "query": { + "type": "string", + "description": "String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.\n" + }, + "offset": { + "type": "integer", + "description": "Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset.\n\nFor example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this:\n\n`offset=0`\n`offset=5`\n`offset=10`\n\n**Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.\n" + }, + "limit": { + "type": "integer", + "description": "Controls the maximum number of items that may be returned for a single request. The default is 20, the maximum is 2000.\n" + }, + "sort": { + "type": "string", + "description": "A comma separated list of the following form:\n\n`submitTimeUtc:desc`\n" + }, + "count": { + "type": "integer", + "description": "Results for this page, this could be below the limit." + }, + "totalCount": { + "type": "integer", + "description": "Total number of results." + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "_embedded": { + "type": "object", + "properties": { + "transactionSummaries": { + "type": "array", + "description": "transaction search summary", + "items": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "merchantId": { + "type": "string", + "description": "Your CyberSource merchant ID." + }, + "applicationInformation": { + "type": "object", + "properties": { + "reasonCode": { + "type": "string", + "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" + }, + "rCode": { + "type": "string", + "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n" + }, + "applications": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.\n" + }, + "reasonCode": { + "type": "string", + "description": "3-digit reason code that indicates why the customer profile payment succeeded or failed." + }, + "rCode": { + "type": "string", + "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n" + }, + "reconciliationId": { + "type": "string", + "description": "Reference number that you use to reconcile your CyberSource reports with your processor reports.\n" + }, + "rMessage": { + "type": "string", + "description": "Message that explains the reply flag for the application.\n" + }, + "returnCode": { + "type": "integer", + "description": "The description for this field is not available." + } + } + } + }, + "returnCode": { + "type": "integer", + "description": "The description for this field is not available." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "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.\n" + }, + "partner": { + "type": "object", + "properties": { + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "xid": { + "type": "string", + "maxLength": 40, + "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." + }, + "eciRaw": { + "type": "string", + "maxLength": 2, + "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + } + } + }, + "fraudMarkingInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.\n- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.\n- suspected: You believe that you will probably receive a chargeback for the transaction.\n- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.\n" + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "resellerId": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the payment type used in this payment transaction. Example: credit card, check" + }, + "method": { + "type": "string", + "description": "Indicates the payment method used in this payment transaction." + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "prefix": { + "type": "string", + "maxLength": 6, + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the customer\u2019s payment account number.\n" + }, + "prefix": { + "type": "string", + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" + } + } + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "businessApplicationId": { + "type": "string", + "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" + }, + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "commerceIndicatorLabel": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "processor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\n" + } + } + }, + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + }, + "terminalSerialNumber": { + "type": "string", + "maxLength": 32, + "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "deviceId": { + "type": "string", + "description": "Value created by the client software that uniquely identifies the POS device.\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to\nthe CyberSource reporting functionality.\n\nThis field is supported only for authorizations and credits on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\nString (32)\n" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + } + } + } + } + }, + "riskInformation": { + "type": "object", + "properties": { + "providers": { + "type": "object", + "properties": { + "fingerprint": { + "type": "object", + "properties": { + "true_ipaddress": { + "type": "string", + "maxLength": 255, + "description": "Customer\u2019s true IP address detected by the application.\n\nFor details, see the `true_ipaddress` field description in _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" + }, + "hash": { + "type": "string", + "maxLength": 255, + "description": "The unique identifier of the device that is returned in the `riskInformation.providers.fingerprint.device_fingerprint_hash` API reply field.\n\nNOTE: For details about the value of this field, see the `decision_provider_#_field_#_value` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n\nFor more details about this field, see the `device_fingerprint_hash` field description in the _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" + }, + "smartId": { + "type": "string", + "maxLength": 255, + "description": "The device identifier generated from attributes collected during profiling. Returned by a 3rd party when you use device fingerprinting.\n\nFor details, see the `device_fingerprint_smart_id` field description in [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\n" + } + } + } + } + } + } + }, + "_links": { + "type": "object", + "properties": { + "transactionDetail": { + "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." + } + } + } + } + } + } + } + } + } + }, + "_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." + } + } + } + } + } + }, + "example": { + "searchId": "87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", + "save": "false", + "name": "Search By Code", + "timezone": "America/Chicago", + "query": "clientReferenceInformation.code:12345 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", + "offset": 0, + "limit": 2000, + "sort": "id:asc, submitTimeUtc:asc", + "count": 22, + "totalCount": 22, + "status": "status", + "submitTimeUtc": "2018-09-18T16:59:28Z", + "_embedded": { + "transactionSummaries": [ + { + "id": "5217848115816817001541", + "submitTimeUtc": "2018-03-23T06:00:11Z", + "merchantId": "sandeep_wf", + "applicationInformation": { + "status": "TRANSMITTED", + "reasonCode": "123", + "rCode": "1", + "rFlag": "SOK", + "returnCode": 1040000, + "applications": [ + { + "name": "ics_service_fee_calculate", + "status": "TRANSMITTED", + "reasonCode": "123", + "rCode": "1", + "rFlag": "SOK", + "reconciliationId": "55557", + "rMessage": "Request was processed successfully", + "returnCode": 1040000 + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "123456" + }, + "clientReferenceInformation": { + "code": "12345", + "applicationName": "Service Fee Request", + "applicationUser": "sandeep_wf", + "partner": { + "solutionId": "89012345" + } + }, + "consumerAuthenticationInformation": { + "eciRaw": "02", + "xid": "12345678", + "transactionId": "00152259513040478521" + }, + "deviceInformation": { + "ipAddress": "1.10.10.10" + }, + "fraudMarkingInformation": { + "reason": "fraud txn" + }, + "merchantDefinedInformation": [ + { + "key": "abc", + "value": "xyz" + } + ], + "merchantInformation": { + "resellerId": "wfbmcp" + }, + "orderInformation": { + "billTo": { + "firstName": "Test", + "lastName": "TSS", + "address1": "201S.DivisionSt._1", + "email": "null@cybersource.com", + "country": "US", + "phoneNumber": "5120000000" + }, + "shipTo": { + "firstName": "Test", + "lastName": "TSS", + "address1": "201S.DivisionSt._1", + "country": "US", + "phoneNumber": "5120000000" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "paymentType": { + "name": "CARD", + "method": { + "name": "method name" + } + }, + "customer": { + "customerId": "12345" + }, + "card": { + "suffix": "1111", + "prefix": "123456", + "type": "001" + }, + "bank": { + "account": { + "suffix": "1111", + "prefix": "123456" + } + } + }, + "processingInformation": { + "commerceIndicator": "7", + "paymentSolution": "xyz", + "businessApplicationId": "12345" + }, + "processorInformation": { + "processor": { + "name": "FirstData" + }, + "approvalCode": "authcode1234567" + }, + "pointOfSaleInformation": { + "terminalId": "1", + "terminalSerialNumber": "123111123", + "deviceId": "asfaf12312313", + "partner": { + "originalTransactionId": "131231414414" + } + }, + "riskInformation": { + "providers": { + "fingerprint": { + "true_ipaddress": "1.101.102.112", + "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", + "smart_id": "23442fdadfa" + } + } + }, + "_links": { + "transactionDetail": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", + "method": "GET" + } + } + } + ] + }, + "_links": { + "self": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", + "method": "GET" + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "tssV2TransactionsPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "tssV2TransactionsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create a search request", + "value": { + "save": "false", + "name": "MRN", + "timezone": "America/Chicago", + "query": "clientReferenceInformation.code:TC50171_3 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", + "offset": 0, + "limit": 100, + "sort": "id:asc,submitTimeUtc:asc" + } + } + } + } + }, + "/tss/v2/searches/{searchId}": { + "get": { + "summary": "Get Search Results", + "description": "Include the Search ID in the GET request to retrieve the search results.", + "tags": [ + "SearchTransactions" + ], + "produces": [ + "*/*" + ], + "operationId": "getSearch", + "x-devcenter-metaData": { + "categoryTag": "Transaction_Search", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn_search_api.html" + }, + "parameters": [ + { + "name": "searchId", + "in": "path", + "description": "Search ID.", + "required": true, + "type": "string" + } + ], + "x-depends": { + "example": { + "path": "/tss/v2/searches", + "verb": "post", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "searchId", + "destinationField": "searchId", + "fieldTypeInDestination": "path" + } + ] + }, + "responses": { + "200": { + "description": "Successful response.", + "schema": { + "type": "object", + "title": "tssV2TransactionsPost201Response", + "properties": { + "searchId": { + "type": "string", + "maxLength": 60, + "description": "An unique identification number assigned by CyberSource to identify each Search request." + }, + "save": { + "type": "boolean", + "description": "Indicates whether or not you want to save this search request for future use. The options are:\n\n* `true`\n* `false` (default value)\n\nIf set to `true`, this field returns\n`searchID` in the response. You can use this value to retrieve the details of the saved search.\n" + }, + "name": { + "type": "string", + "description": "Name of this search. When `save` is set to `true`, this search is saved with this name.\n" + }, + "timezone": { + "type": "string", + "description": "Merchant\u2019s time zone in ISO standard, using the TZ database format. For example: `America/Chicago`\n" + }, + "query": { + "type": "string", + "description": "String that contains the filters and variables for which you want to search. For information about supported field-filters and operators, see the [Query Filters]( https://developer.cybersource.com/api/developer-guides/dita-txn-search-details-rest-api-dev-guide-102718/txn-search-intro/txn-filtering.html) section of the Transaction Search Developer Guide.\n" + }, + "offset": { + "type": "integer", + "description": "Controls the starting point within the collection of results, which defaults to 0. The first item in the collection is retrieved by setting a zero offset.\n\nFor example, if you have a collection of 15 items to be retrieved from a resource and you specify limit=5, you can retrieve the entire set of results in 3 successive requests by varying the offset value like this:\n\n`offset=0`\n`offset=5`\n`offset=10`\n\n**Note:** If an offset larger than the number of results is provided, this will result in no embedded object being returned.\n" + }, + "limit": { + "type": "integer", + "description": "Controls the maximum number of items that may be returned for a single request. The default is 20, the maximum is 2000.\n" + }, + "sort": { + "type": "string", + "description": "A comma separated list of the following form:\n\n`submitTimeUtc:desc`\n" + }, + "count": { + "type": "integer", + "description": "Results for this page, this could be below the limit." + }, + "totalCount": { + "type": "integer", + "description": "Total number of results." + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction." + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "_embedded": { + "type": "object", + "properties": { + "transactionSummaries": { + "type": "array", + "description": "transaction search summary", + "items": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "merchantId": { + "type": "string", + "description": "Your CyberSource merchant ID." + }, + "applicationInformation": { + "type": "object", + "properties": { + "reasonCode": { + "type": "string", + "description": "Indicates the reason why a request succeeded or failed and possible action to take if a request fails.\n\nFor details, see the appendix of reason codes in the documentation for the relevant payment method.\n" + }, + "rCode": { + "type": "string", + "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n" + }, + "applications": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the CyberSource transaction type (such as CC settlement or CC authorization) that the merchant wants to process in a transaction request. More than one transaction type can included in a transaction request. Each transaction type separately returns their own status, reasonCode, rCode, and rFlag messages.\n" + }, + "reasonCode": { + "type": "string", + "description": "3-digit reason code that indicates why the customer profile payment succeeded or failed." + }, + "rCode": { + "type": "string", + "description": "Indicates whether the service request was successful.\nPossible values:\n\n- `-1`: An error occurred.\n- `0`: The request was declined.\n- `1`: The request was successful.\n" + }, + "rFlag": { + "type": "string", + "description": "One-word description of the result of the application.\n" + }, + "reconciliationId": { + "type": "string", + "description": "Reference number that you use to reconcile your CyberSource reports with your processor reports.\n" + }, + "rMessage": { + "type": "string", + "description": "Message that explains the reply flag for the application.\n" + }, + "returnCode": { + "type": "integer", + "description": "The description for this field is not available." + } + } + } + }, + "returnCode": { + "type": "integer", + "description": "The description for this field is not available." + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "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.\n" + }, + "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.\n" + }, + "partner": { + "type": "object", + "properties": { + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "consumerAuthenticationInformation": { + "type": "object", + "properties": { + "xid": { + "type": "string", + "maxLength": 40, + "description": "Transaction identifier.\n\nFor details, see `xid` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." + }, + "eciRaw": { + "type": "string", + "maxLength": 2, + "description": "Raw electronic commerce indicator (ECI).\n\nFor details, see `eci_raw` request field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "deviceInformation": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "maxLength": 45, + "description": "IP address of the customer.\n\n#### Used by\n**Authorization, Capture, and Credit**\nOptional field.\n" + } + } + }, + "fraudMarkingInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "Reason for adding the transaction to the negative list. This field can contain one of the following values:\n- fraud_chargeback: You have received a fraudrelated chargeback for the transaction.\n- non_fraud_chargeback: You have received a non-fraudulent chargeback for the transaction.\n- suspected: You believe that you will probably receive a chargeback for the transaction.\n- creditback: You issued a refund to the customer to avoid a chargeback for the transaction.\n" + } + } + }, + "merchantDefinedInformation": { + "type": "array", + "description": "The object containing the custom data that the merchant defines.\n", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "maxLength": 50, + "description": "The number you assign for as the key for your merchant-defined data field. Valid values are 0 to 100.\n\nFor example, to set or access the key for the 2nd merchant-defined data field in the array, you would reference `merchantDefinedInformation[1].key`.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].key` and\n`merchantDefinedInformation[1].key` for data that you want to provide to the issuer to identify the\ntransaction.\n\nFor details, see the `merchant_defined_data1` request-level field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + }, + "value": { + "type": "string", + "maxLength": 255, + "description": "The value you assign for your merchant-defined data field.\n\nFor details, see `merchant_defined_data1` field description in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n**Warning** Merchant-defined data fields are not intended to and must not be used to capture personally identifying information. Accordingly, merchants are prohibited from capturing, obtaining, and/or transmitting any personally identifying information in or via the merchant-defined data fields. Personally identifying information includes, but is not\nlimited to, address, credit card number, social security number, driver's license number, state-issued identification number, passport number, and card verification numbers (CVV,\nCVC2, CVV2, CID, CVN). In the event CyberSource discovers that a merchant is capturing and/or transmitting personally identifying information via the merchant-defined data fields, whether or not intentionally, CyberSource will immediately suspend the merchant's account, which will result in a rejection of any and all transaction requests submitted by the merchant after the point of suspension.\n\n#### CyberSource through VisaNet\nFor installment payments with Mastercard in Brazil, use `merchantDefinedInformation[0].value` and\n`merchantDefinedInformation[1].value` for data that you want to provide to the issuer to identify the\ntransaction. For details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor details, see \"Installment Payments on CyberSource through VisaNet\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\nFor installment payments with Mastercard in Brazil:\n- The value for merchantDefinedInformation[0].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 25-44\n - Field: Reference Field 2\n- The value for merchantDefinedInformation[1].value corresponds to the following data in the TC 33 capture file5:\n - Record: CP07 TCR5\n - Position: 45-64\n - Field: Reference Field 3\n" + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "resellerId": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "billTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s first name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called _CyberSource Latin American Processing_. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Customer\u2019s last name. This name must be the same as the name on the card.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource Latin American Processing\n**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.\\\n**Note** CyberSource Latin American Processing is the name of a specific processing connection that CyberSource supports. In the CyberSource API documentation, CyberSource Latin American Processing does not refer to the general topic of processing in Latin America. The information in this field description is for the specific processing connection called CyberSource Latin American Processing. It is not for any other Latin American processors that CyberSource supports.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### RBS WorldPay Atlanta\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "Payment card billing street address as it appears on the credit card issuer\u2019s records.\n\n#### Atos\nThis field must not contain colons (:).\n\n#### CyberSource through VisaNet\n**Important** When you populate orderInformation.billTo.address1 and orderInformation.billTo.address2,\nCyberSource through VisaNet concatenates the two values. If the concatenated value exceeds 40 characters,\nCyberSource through VisaNet truncates the value at 40 characters before sending it to Visa and the issuing bank.\nTruncating this value affects AVS results and therefore might also affect risk decisions and chargebacks.\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\nASCII characters for transmission to the credit card networks.\n\n#### FDMS Nashville\nWhen the street name is numeric, it must be sent in numeric format. For example, if the address is _One First Street_,\nit must be sent as _1 1st Street_.\n\nRequired if keyed; not used if swiped.\n\nString (20)\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### All other processors:\nOptional.\nString (60)\n\n#### For Payouts\nThis field may be sent only for FDC Compass.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n" + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "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).\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**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Customer\u2019s phone number.\n\nIt is recommended that you include the country code when the order is from outside the U.S.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n#### For Payouts:\nThis field may be sent only for FDC Compass.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nOptional field.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "firstName": { + "type": "string", + "maxLength": 60, + "description": "First name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "lastName": { + "type": "string", + "maxLength": 60, + "description": "Last name of the recipient.\n\n#### Litle\nMaximum length: 25\n\n#### All other processors\nMaximum length: 60\n\nOptional field.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "country": { + "type": "string", + "description": "Country of the shipping address. Use the two-character [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "phoneNumber": { + "type": "string", + "maxLength": 15, + "description": "Phone number associated with the shipping address." + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + }, + "paymentInformation": { + "type": "object", + "properties": { + "paymentType": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Indicates the payment type used in this payment transaction. Example: credit card, check" + }, + "method": { + "type": "string", + "description": "Indicates the payment method used in this payment transaction." + } + } + }, + "customer": { + "type": "object", + "properties": { + "customerId": { + "type": "string", + "description": "Unique identifier for the customer's card and billing information.\n\nWhen you use Payment Tokenization or Recurring Billing and you include this value in\nyour request, many of the fields that are normally required for an authorization or credit\nbecome optional.\n\n**NOTE** When you use Payment Tokenization or Recurring Billing, the value for the Customer ID is actually the Cybersource payment token for a customer. This token stores information such as the consumer\u2019s card number so it can be applied towards bill payments, recurring payments, or one-time payments. By using this token in a payment API request, the merchant doesn't need to pass in data such as the card number or expiration date in the request itself.\n\nFor details, see the `subscription_id` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n" + } + } + }, + "card": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the cardholder\u2019s account number. This field is included in the reply message when the client software\nthat is installed on the POS terminal uses the token management service (TMS) to retrieve tokenized payment details.\n\nYou must contact customer support to have your account enabled to receive these fields in the credit reply message.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### PIN debit\nThis field is returned only for tokenized transactions. You can use this value on the receipt that you give to the cardholder.\n\nReturned by PIN debit credit and PIN debit purchase.\n\nThis field is supported only by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "prefix": { + "type": "string", + "maxLength": 6, + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n" + }, + "type": { + "type": "string", + "description": "Three-digit value that indicates the card type.\n\n**IMPORTANT** It is strongly recommended that you include the card type field in request messages even if it is\noptional for your processor and card type. Omitting the card type can cause the transaction to be processed with the wrong card type.\n\nPossible values:\n- `001`: Visa. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. Use card type value `001` for Visa Electron.\n- `002`: Mastercard, Eurocard[^1], which is a European regional brand of Mastercard.\n- `003`: American Express\n- `004`: Discover\n- `005`: Diners Club\n- `006`: Carte Blanche[^1]\n- `007`: JCB[^1]\n- `014`: Enroute[^1]\n- `021`: JAL[^1]\n- `024`: Maestro (UK Domestic)[^1]\n- `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types.\n- `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types.\n- `034`: Dankort[^1]\n- `036`: Cartes Bancaires[^1,4]\n- `037`: Carta Si[^1]\n- `039`: Encoded account number[^1]\n- `040`: UATP[^1]\n- `042`: Maestro (International)[^1]\n- `050`: Hipercard[^2,3]\n- `051`: Aura\n- `054`: Elo[^3]\n- `062`: China UnionPay\n\n[^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.\n[^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.\n[^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.\n[^4]: For this card type, you must include the `paymentInformation.card.type` in your request for any payer authentication services.\n\n#### Used by\n**Authorization**\nRequired for Carte Blanche and JCB.\nOptional for all other card types.\n\n#### Card Present reply\nThis field is included in the reply message when the client software that is installed on the POS terminal uses\nthe token management service (TMS) to retrieve tokenized payment details. You must contact customer support to\nhave your account enabled to receive these fields in the credit reply message.\n\nReturned by the Credit service.\n\nThis reply field is only supported by the following processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\n#### Google Pay transactions\nFor PAN-based Google Pay transactions, this field is returned in the API response.\n\n#### GPX\nThis field only supports transactions from the following card types:\n- Visa\n- Mastercard\n- AMEX\n- Discover\n- Diners\n- JCB\n- Union Pay International\n" + } + } + }, + "bank": { + "type": "object", + "properties": { + "account": { + "type": "object", + "properties": { + "suffix": { + "type": "string", + "description": "Last four digits of the customer\u2019s payment account number.\n" + }, + "prefix": { + "type": "string", + "description": "Bank Identification Number (BIN). This is the initial four to six numbers on a credit card account number.\n" + } + } + } + } + } + } + }, + "processingInformation": { + "type": "object", + "properties": { + "paymentSolution": { + "type": "string", + "maxLength": 12, + "description": "Type of digital payment solution for the transaction. Possible Values:\n\n - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/)\n - `001`: Apple Pay.\n - `004`: Cybersource In-App Solution.\n - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n - `006`: Android Pay.\n - `007`: Chase Pay.\n - `008`: Samsung Pay.\n - `012`: Google Pay.\n - `013`: Cybersource P2PE Decryption\n - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token.\n - `027`: Click to Pay.\n" + }, + "businessApplicationId": { + "type": "string", + "description": "Payouts transaction type.\nRequired for OCT transactions.\nThis field is a pass-through, which means that CyberSource does not verify the value or\nmodify it in any way before sending it to the processor.\n**Note** When the request includes this field, this value overrides the information in your CyberSource account.\n\nFor valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf)\n" + }, + "commerceIndicator": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + }, + "commerceIndicatorLabel": { + "type": "string", + "maxLength": 20, + "description": "Type of transaction. Some payment card companies use this information when determining discount rates.\n\n#### Used by\n**Authorization**\nRequired payer authentication transactions; otherwise, optional.\n**Credit**\nRequired for standalone credits on Chase Paymentech solutions; otherwise, optional.\n\nThe list of valid values in this field depends on your processor.\nSee Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide.\n\n#### Ingenico ePayments\nWhen you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you\ninstead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.)\n\n#### Payer Authentication Transactions\nFor the possible values and requirements, see \"Payer Authentication,\" page 195.\n\n#### Card Present\nYou must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be\nused when the cardholder and card are present at the time of the transaction.\nFor all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator\nshould be submitted as \u201cmoto\"\n" + } + } + }, + "processorInformation": { + "type": "object", + "properties": { + "processor": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 30, + "description": "Name of the Processor.\n" + } + } + }, + "approvalCode": { + "type": "string", + "maxLength": 6, + "description": "Authorization code. Returned only when the processor returns this value.\n\nThe length of this value depends on your processor.\n\nReturned by authorization service.\n\n#### PIN debit\nAuthorization code that is returned by the processor.\n\nReturned by PIN debit credit.\n\n#### Elavon Encrypted Account Number Program\nThe returned value is OFFLINE.\n\n#### TSYS Acquiring Solutions\nThe returned value for a successful zero amount authorization is 000000.\n" + } + } + }, + "pointOfSaleInformation": { + "type": "object", + "properties": { + "terminalId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements.\n\n#### CyberSource through VisaNet\nA list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for\nyour CyberSource account, the value you send for this field is validated against the list each time you include\nthe field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support.\n\nWhen you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account.\n\n#### FDC Nashville Global\nTo have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you.\n\n#### For Payouts\nThis field is applicable for CyberSource through VisaNet.\n\n#### GPX\nIdentifier for the terminal at your retail location. A list of all possible values is stored in your account.\nIf terminal ID validation is enabled for your account, the value you send for this field is validated against\nthe list each time you include the field in a request. To enable or disable terminal ID validation, contact\ncustomer support.\n\nWhen you do not include this field in a request, the default value that is defined in your account is used.\n\nOptional for authorizations.\n\n#### Used by\n**Authorization**\nOptional for the following processors. When you do not include this field in a request, the default value that is\ndefined in your account is used.\n - American Express Direct\n - Credit Mutuel-CIC\n - FDC Nashville Global\n - SIX\n- Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`.\n- FDMS Nashville: The default value that is defined in your account is used.\n- GPX\n- OmniPay Direct: Optional field.\n\nFor the following processors, this field is not used.\n- GPN\n- JCN Gateway\n- RBS WorldPay Atlanta\n- TSYS Acquiring Solutions\n- Worldpay VAP\n\n#### Card Present reply\nTerminal identifier assigned by the acquirer. This value must be printed on the receipt.\n" + }, + "terminalSerialNumber": { + "type": "string", + "maxLength": 32, + "description": "Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that\nis installed on the POS terminal.\n\nThis value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality.\n\n#### Used by\n**Authorization and Credit**\nOptional. This field is supported only by client software that is installed on your POS terminals for the\nfollowing processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n" + }, + "deviceId": { + "type": "string", + "description": "Value created by the client software that uniquely identifies the POS device.\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to\nthe CyberSource reporting functionality.\n\nThis field is supported only for authorizations and credits on these processors:\n- American Express Direct\n- Credit Mutuel-CIC\n- FDC Nashville Global\n- OmniPay Direct\n- SIX\n\nOptional field.\nString (32)\n" + }, + "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\nsoftware that is installed on the POS terminal, which makes it available to the terminal\u2019s software and to\nCyberSource. Therefore, you can use this value to reconcile transactions between CyberSource and the terminal\u2019s\nsoftware.\n\nCyberSource does not forward this value to the processor. Instead, the value is forwarded to the CyberSource\nreporting functionality.\n\nThis field is supported only on American Express Direct, FDC Nashville Global, and SIX.\n" + } + } + } + } + }, + "riskInformation": { + "type": "object", + "properties": { + "providers": { + "type": "object", + "properties": { + "fingerprint": { + "type": "object", + "properties": { + "true_ipaddress": { + "type": "string", + "maxLength": 255, + "description": "Customer\u2019s true IP address detected by the application.\n\nFor details, see the `true_ipaddress` field description in _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" + }, + "hash": { + "type": "string", + "maxLength": 255, + "description": "The unique identifier of the device that is returned in the `riskInformation.providers.fingerprint.device_fingerprint_hash` API reply field.\n\nNOTE: For details about the value of this field, see the `decision_provider_#_field_#_value` field description in the _Decision Manager Using the SCMP API Developer Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Decision Manager Using the SCMP API Developer Guide_ (PDF link).\n\nFor more details about this field, see the `device_fingerprint_hash` field description in the _Device Fingerprinting Guide_ on the [CyberSource Business Center.](https://ebc2.cybersource.com/ebc2/) Click **Decision Manager** > **Documentation** > **Guides** > _Device Fingerprinting Guide_ (PDF link).\n" + }, + "smartId": { + "type": "string", + "maxLength": 255, + "description": "The device identifier generated from attributes collected during profiling. Returned by a 3rd party when you use device fingerprinting.\n\nFor details, see the `device_fingerprint_smart_id` field description in [CyberSource Decision Manager Device Fingerprinting Guide.](https://www.cybersource.com/developers/documentation/fraud_management)\n" + } + } + } + } + } + } + }, + "_links": { + "type": "object", + "properties": { + "transactionDetail": { + "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." + } + } + } + } + } + } + } + } + } + }, + "_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." + } + } + } + } + } + }, + "example": { + "searchId": "87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", + "save": "false", + "name": "Search By Code", + "timezone": "America/Chicago", + "query": "clientReferenceInformation.code:12345 AND submitTimeUtc:[NOW/DAY-7DAYS TO NOW/DAY+1DAY}", + "offset": 0, + "limit": 2000, + "sort": "id:asc, submitTimeUtc:asc", + "count": 22, + "totalCount": 22, + "status": "status", + "submitTimeUtc": "2018-09-18T16:59:28Z", + "_embedded": { + "transactionSummaries": [ + { + "id": "5217848115816817001541", + "submitTimeUtc": "2018-03-23T06:00:11Z", + "merchantId": "sandeep_wf", + "applicationInformation": { + "status": "TRANSMITTED", + "reasonCode": "123", + "rCode": "1", + "rFlag": "SOK", + "returnCode": 1040000, + "applications": [ + { + "name": "ics_service_fee_calculate", + "status": "TRANSMITTED", + "reasonCode": "123", + "rCode": "1", + "rFlag": "SOK", + "reconciliationId": "55557", + "rMessage": "Request was processed successfully", + "returnCode": 1040000 + } + ] + }, + "buyerInformation": { + "merchantCustomerId": "123456" + }, + "clientReferenceInformation": { + "code": "12345", + "applicationName": "Service Fee Request", + "applicationUser": "sandeep_wf", + "partner": { + "solutionId": "89012345" + } + }, + "consumerAuthenticationInformation": { + "eciRaw": "02", + "xid": "12345678", + "transactionId": "00152259513040478521" + }, + "deviceInformation": { + "ipAddress": "1.10.10.10" + }, + "fraudMarkingInformation": { + "reason": "fraud txn" + }, + "merchantDefinedInformation": [ + { + "key": "abc", + "value": "xyz" + } + ], + "merchantInformation": { + "resellerId": "wfbmcp" + }, + "orderInformation": { + "billTo": { + "firstName": "Test", + "lastName": "TSS", + "address1": "201S.DivisionSt._1", + "email": "null@cybersource.com", + "country": "US", + "phoneNumber": "5120000000" + }, + "shipTo": { + "firstName": "Test", + "lastName": "TSS", + "address1": "201S.DivisionSt._1", + "country": "US", + "phoneNumber": "5120000000" + }, + "amountDetails": { + "totalAmount": "100.00", + "currency": "USD" + } + }, + "paymentInformation": { + "paymentType": { + "name": "CARD", + "method": { + "name": "method name" + } + }, + "customer": { + "customerId": "12345" + }, + "card": { + "suffix": "1111", + "prefix": "123456", + "type": "001" + }, + "bank": { + "account": { + "suffix": "1111", + "prefix": "123456" + } + } + }, + "processingInformation": { + "commerceIndicator": "7", + "paymentSolution": "xyz", + "businessApplicationId": "12345" + }, + "processorInformation": { + "processor": { + "name": "FirstData" + }, + "approvalCode": "authcode1234567" + }, + "pointOfSaleInformation": { + "terminalId": "1", + "terminalSerialNumber": "123111123", + "deviceId": "asfaf12312313", + "partner": { + "originalTransactionId": "131231414414" + } + }, + "riskInformation": { + "providers": { + "fingerprint": { + "true_ipaddress": "1.101.102.112", + "hash": "tuWmt8Ubw0EAybBF3wrZcEqIcZsLr8YPldTQDUxAg2k=", + "smart_id": "23442fdadfa" + } + } + }, + "_links": { + "transactionDetail": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/transactions/5217848115816817001541", + "method": "GET" + } + } + } + ] + }, + "_links": { + "self": { + "href": "https://sl73paysvapq002.visa.com:2031/payment/tss/v2/searches/87e1e4bd-cac2-49b1-919a-4d5e29a2e55d", + "method": "GET" + } + } + } + } + }, + "404": { + "description": "The specified resource not found in the system." + }, + "500": { + "description": "Unexpected server error." + } + } + } + }, + "/reporting/v3/report-downloads": { + "get": { + "tags": [ + "Report Downloads" + ], + "summary": "Download a Report", + "description": "Download a report using the unique report name and date.\n", + "operationId": "downloadReport", + "x-streaming": true, + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "text/csv", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "reportName": "testrest_subcription_v2989", + "reportDate": "2018-09-30" + }, + "produces": [ + "application/xml", + "text/csv" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "reportDate", + "in": "query", + "description": "Valid date on which to download the report in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n yyyy-mm-dd\nFor reports that span multiple days, this value would be the end date of the report in the time zone of the report subscription.\nExample 1: If your report start date is 2020-03-06 and the end date is 2020-03-09, the reportDate passed in the query is 2020-03-09.\nExample 2: If your report runs from midnight to midnight on 2020-03-09, the reportDate passed in the query is 2020-03-10\n", + "required": true, + "type": "string", + "format": "date" + }, + { + "name": "reportName", + "in": "query", + "description": "Name of the report to download", + "type": "string", + "required": true + } + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Invalid Request", + "schema": { + "title": "reportingv3ReportDownloadsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "No Reports Found" + } + } + } + }, + "/reporting/v3/reports": { + "get": { + "tags": [ + "Reports" + ], + "summary": "Retrieve Available Reports", + "description": "Retrieve a list of the available reports to which you are subscribed. This will also give you the reportId value, which you can also use to download a report.\n", + "operationId": "searchReports", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "startTime": "2019-10-01T00:00:00Z", + "endTime": "2019-10-30T23:59:59Z", + "timeQueryType": "executedTime", + "reportMimeType": "application/xml" + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "timeQueryType", + "in": "query", + "description": "Specify time you would like to search\n\nValid values:\n- reportTimeFrame\n- executedTime\n", + "required": true, + "type": "string" + }, + { + "name": "reportMimeType", + "in": "query", + "description": "Valid Report Format\n\nValid values:\n- application/xml\n- text/csv\n", + "required": false, + "type": "string" + }, + { + "name": "reportFrequency", + "in": "query", + "description": "Valid Report Frequency\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- USER_DEFINED\n- ADHOC\n", + "required": false, + "type": "string" + }, + { + "name": "reportName", + "in": "query", + "description": "Valid Report Name", + "required": false, + "type": "string" + }, + { + "name": "reportDefinitionId", + "in": "query", + "description": "Valid Report Definition Id", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "reportStatus", + "in": "query", + "description": "Valid Report Status\n\nValid values:\n- COMPLETED\n- PENDING\n- QUEUED\n- RUNNING\n- ERROR\n- NO_DATA\n", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "title": "reportingV3ReportsGet200Response", + "type": "object", + "properties": { + "reportSearchResults": { + "type": "array", + "items": { + "type": "object", + "properties": { + "_link": { + "type": "object", + "properties": { + "reportDownload": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "/reporting/v3/report-downloads?reportDate=2017-10-02&reportName=MyTransactionRequestDetailReport&reportTime=10:00:00+05:00" + }, + "method": { + "type": "string", + "example": "GET" + } + } + } + } + }, + "reportDefinitionId": { + "type": "string", + "description": "Unique Report Identifier of each report type", + "example": "210" + }, + "reportName": { + "type": "string", + "description": "Name of the report specified by merchant while creating the report", + "example": "MyTransactionRequestDetailReport" + }, + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Format of the report to get generated\nValid Values:\n- application/xml\n- text/csv\n" + }, + "reportFrequency": { + "type": "string", + "example": "DAILY", + "description": "Frequency of the report to get generated\nValid Values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- ADHOC\n" + }, + "status": { + "type": "string", + "description": "Status of the report\nValid Values:\n- COMPLETED\n- PENDING\n- QUEUED\n- RUNNING\n- ERROR\n- NO_DATA\n" + }, + "reportStartTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:00:00+05:00", + "description": "Specifies the report start time in ISO 8601 format" + }, + "reportEndTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-02T10:00:00+05:00", + "description": "Specifies the report end time in ISO 8601 format" + }, + "timezone": { + "type": "string", + "example": "America/Chicago", + "description": "Time Zone" + }, + "reportId": { + "type": "string", + "example": "6d9cb5b6-0e97-2d03-e053-7cb8d30af52e", + "description": "Unique identifier generated for every reports" + }, + "organizationId": { + "type": "string", + "example": "Test_MerchantId", + "description": "CyberSource Merchant Id" + }, + "queuedTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-03T10:00:00+05:00", + "description": "Specifies the time of the report in queued in ISO 8601 format" + }, + "reportGeneratingTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-03T10:00:00+05:00", + "description": "Specifies the time of the report started to generate in ISO 8601 format" + }, + "reportCompletedTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-03T10:10:00+05:00", + "description": "Specifies the time of the report completed the generation in ISO 8601 format" + }, + "subscriptionType": { + "type": "string", + "example": "CUSTOM", + "description": "Specifies whether the subscription created is either Custom, Standard or Classic\n" + }, + "groupId": { + "type": "string", + "example": "12345", + "description": "Id for selected group." + } + }, + "description": "Report Search Result Bean" + } + } + } + } + }, + "400": { + "description": "Invalid Request", + "schema": { + "title": "reportingV3ReportsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "No Reports Found" + } + } + }, + "post": { + "tags": [ + "Reports" + ], + "summary": "Create Adhoc Report", + "description": "Create a one-time report. You must specify the type of report in reportDefinitionName. For a list of values for reportDefinitionName, see the [Reporting Developer Guide](https://www.cybersource.com/developers/documentation/reporting_and_reconciliation)\n", + "operationId": "createReport", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "in": "body", + "name": "createAdhocReportRequest", + "description": "Report subscription request payload", + "required": true, + "schema": { + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Valid CyberSource Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "example": "Test_Merchatnt_id" + }, + "reportDefinitionName": { + "type": "string", + "minLength": 1, + "maxLength": 80, + "pattern": "[a-zA-Z0-9-]+", + "example": "TransactionRequestClass" + }, + "reportFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of fields which needs to get included in a report", + "example": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID" + ] + }, + "reportMimeType": { + "type": "string", + "description": "'Format of the report'\n \nValid values:\n- application/xml\n- text/csv\n", + "example": "application/xml" + }, + "reportName": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "[a-zA-Z0-9-_ ]+", + "description": "Name of the report", + "example": "My Transaction Request report" + }, + "timezone": { + "type": "string", + "description": "Timezone of the report", + "example": "America/Chicago" + }, + "reportStartTime": { + "type": "string", + "format": "date-time", + "description": "Start time of the report", + "example": "2017-10-01T10:10:10+05:00" + }, + "reportEndTime": { + "type": "string", + "format": "date-time", + "description": "End time of the report", + "example": "2017-10-02T10:10:10+05:00" + }, + "reportFilters": { + "type": "object", + "properties": { + "Application.Name": { + "type": "array", + "items": { + "type": "string", + "description": "Specifies filter criteria by list of application names separated by comma", + "example": "ics_auth" + } + }, + "firstName": { + "type": "array", + "items": { + "type": "string", + "description": "Specifies filter criteria by list of first names separated by comma", + "example": "Johny" + } + }, + "lastName": { + "type": "array", + "items": { + "type": "string", + "description": "Specifies filter criteria by list of last names separated by comma", + "example": "Danny" + } + }, + "email": { + "type": "array", + "items": { + "type": "string", + "description": "Specifies filter criteria by list of email addresses separated by comma", + "example": "example@visa.com" + } + } + } + }, + "reportPreferences": { + "type": "object", + "description": "Report Preferences", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + }, + "groupName": { + "type": "string", + "pattern": "[0-9]*", + "description": "Specifies the group name", + "example": "myGroup" + } + } + } + } + ], + "responses": { + "201": { + "description": "Created" + }, + "304": { + "description": "Not Modified" + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ReportsPost400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + } + }, + "x-example": { + "example0": { + "summary": "Create Adhoc Report", + "value": { + "reportDefinitionName": "TransactionRequestClass", + "reportFields": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID", + "AFSFields.IPAddress", + "AFSFields.IPCountry", + "AFSFields.IPRoutingMethod", + "AFSFields.IPState", + "Application.Name", + "BankInfo.Address", + "BankInfo.BranchCode", + "BankInfo.City", + "BankInfo.Country", + "BankInfo.Name", + "BankInfo.SwiftCode", + "BillTo.Address1", + "BillTo.Address2", + "BillTo.City", + "BillTo.CompanyName", + "BillTo.CompanyTaxID", + "BillTo.Country", + "BillTo.Email", + "BillTo.FirstName", + "BillTo.LastName", + "BillTo.MiddleName", + "BillTo.NameSuffix", + "BillTo.PersonalID", + "BillTo.Phone", + "BillTo.State", + "BillTo.Title", + "BillTo.Zip", + "ChargebackAndRetrieval.AdjustmentAmount", + "ChargebackAndRetrieval.AdjustmentCurrency", + "ChargebackAndRetrieval.ARN", + "ChargebackAndRetrieval.CaseIdentifier", + "ChargebackAndRetrieval.CaseNumber", + "ChargebackAndRetrieval.CaseTime", + "ChargebackAndRetrieval.CaseType", + "ChargebackAndRetrieval.ChargebackAmount", + "ChargebackAndRetrieval.ChargebackCurrency", + "ChargebackAndRetrieval.ChargebackMessage", + "ChargebackAndRetrieval.ChargebackReasonCode", + "ChargebackAndRetrieval.ChargebackReasonCodeDescription", + "ChargebackAndRetrieval.ChargebackTime", + "ChargebackAndRetrieval.DocumentIndicator", + "ChargebackAndRetrieval.FeeAmount", + "ChargebackAndRetrieval.FeeCurrency", + "ChargebackAndRetrieval.FinancialImpact", + "ChargebackAndRetrieval.FinancialImpactType", + "ChargebackAndRetrieval.MerchantCategoryCode", + "ChargebackAndRetrieval.PartialIndicator", + "ChargebackAndRetrieval.ResolutionTime", + "ChargebackAndRetrieval.ResolvedToIndicator", + "ChargebackAndRetrieval.RespondByDate", + "ChargebackAndRetrieval.TransactionType", + "Check.AccountEncoderID", + "Check.BankTransitNumber", + "Check.SecCode", + "CustomerFields.BillingAddress1", + "CustomerFields.BillingAddress2", + "CustomerFields.BillingCity", + "CustomerFields.BillingCompanyName", + "CustomerFields.BillingCountry", + "CustomerFields.BillingEmail", + "CustomerFields.BillingFirstName", + "CustomerFields.BillingLastName", + "CustomerFields.BillingPhone", + "CustomerFields.BillingPostalCode", + "CustomerFields.BillingState", + "CustomerFields.CustomerID", + "CustomerFields.CustomerUserName", + "CustomerFields.PersonalId(CPF/CNPJ)", + "CustomerFields.ShippingAddress1", + "CustomerFields.ShippingAddress2", + "CustomerFields.ShippingCity", + "CustomerFields.ShippingCompanyName", + "CustomerFields.ShippingCountry", + "CustomerFields.ShippingFirstName", + "CustomerFields.ShippingLastName", + "CustomerFields.ShippingPhone", + "CustomerFields.ShippingPostalCode", + "CustomerFields.ShippingState", + "DecisionManagerEvents.EventPolicy", + "DecisionManagerEvents.TypeofEvent", + "Device.DeviceID", + "DeviceFingerprintFields.abcd", + "DeviceFingerprintFields.BrowserLanguage", + "DeviceFingerprintFields.DeviceLatitude", + "DeviceFingerprintFields.DeviceLongitude", + "DeviceFingerprintFields.displayNameFinalCheck", + "DeviceFingerprintFields.DMESignOffFieldEdit", + "DeviceFingerprintFields.Fingerprint/DeviceFingerprint", + "DeviceFingerprintFields.FlashEnabled", + "DeviceFingerprintFields.FlashOperatingSystem", + "DeviceFingerprintFields.FlashVersion", + "DeviceFingerprintFields.GPSAccuracy", + "DeviceFingerprintFields.ImagesEnabled", + "DeviceFingerprintFields.Jailbreak/RootPrivileges", + "DeviceFingerprintFields.JavaScriptEnabled", + "DeviceFingerprintFields.ProfiledURL", + "DeviceFingerprintFields.ProxyIPAddress", + "DeviceFingerprintFields.ProxyIPAddressActivities", + "DeviceFingerprintFields.ProxyServerType", + "DeviceFingerprintFields.ScreenResolution", + "DeviceFingerprintFields.SignOffFieldDMEEditNewOne", + "DeviceFingerprintFields.SmartID", + "DeviceFingerprintFields.SmartIDConfidenceLevel", + "DeviceFingerprintFields.TimeOnPage", + "DeviceFingerprintFields.TrueIPAddress", + "DeviceFingerprintFields.TrueIPAddressActivities", + "DeviceFingerprintFields.TrueIPAddressAttributes", + "DeviceFingerprintFields.txdea1", + "DeviceFingerprintFields.txdesv", + "EmailageFields.FraudType", + "EmailageFields.IP Postal", + "EmailageFields.IPCity", + "EmailageFields.IPCountry", + "EmailageFields.IPRegion", + "EmailageFields.SourceIndustry", + "Event.Amount", + "Event.CurrencyCode", + "Event.Event", + "Event.EventDate", + "Event.ProcessorMessage", + "Exception.Action", + "Exception.CYBSExceptionID", + "Exception.DccLookupStatus", + "Exception.ExceptionAmount", + "Exception.ExceptionAmountCurrency", + "Exception.ExceptionCategory", + "Exception.ExceptionDate", + "Exception.ExceptionDescription", + "Exception.ExceptionDeviceHardwareRevision", + "Exception.ExceptionDeviceID", + "Exception.ExceptionDeviceOS", + "Exception.ExceptionDeviceOSVersion", + "Exception.ExceptionDeviceTerminalID", + "Exception.ExceptionMessage", + "Exception.ExceptionReasonDescription", + "Exception.ExceptionStatus", + "Exception.ExceptionStatusCode", + "Exception.ExceptionType", + "Exception.FinancialStatus", + "Exception.LastActionDate", + "Exception.NextActionDate", + "Exception.OriginalTransactionSubmissionDate", + "Exception.PaymentNumber", + "Exception.ProcessorCaseID", + "Exception.ProcessorResponseCode", + "Exception.ReasonCode", + "Exception.RetryCount", + "Fee.AssessmentAmount", + "Fee.AssessmentCurrency", + "Fee.BillingCycle", + "Fee.BillingType", + "Fee.ClearedInterchangeLevel", + "Fee.DiscountAmount", + "Fee.DiscountCurrency", + "Fee.DiscountRate", + "Fee.DowngradeReasonCode", + "Fee.InterchangeAmount", + "Fee.InterchangeCurrency", + "Fee.InterchangeRate", + "Fee.PerItemFeeAmount", + "Fee.PerItemFeeCurrency", + "Fee.PricedInterchangeLevel", + "Fee.ServiceFeeAmount", + "Fee.ServiceFeeAmountCcy", + "Fee.ServiceFeeFixedAmount", + "Fee.ServiceFeeFixedAmountCcy", + "Fee.ServiceFeeRate", + "Fee.SettlementAmount", + "Fee.SettlementCurrency", + "Fee.SettlementTime", + "Fee.SettlementTimeZone", + "Fee.SourceDescriptor", + "Fee.TotalFeeAmount", + "Fee.TotalFeeCurrency", + "Funding.AdjustmentAmount", + "Funding.AdjustmentCurrency", + "Funding.AdjustmentDescription", + "Funding.AdjustmentType", + "FundTransfer.BankCheckDigit", + "FundTransfer.IbanIndicator", + "Invoice.BillingGroupDescription", + "Invoice.NotProcessed", + "Invoice.OrganizationID", + "Invoice.PerformedServices", + "Invoice.Processed", + "Invoice.Total", + "JP.Amount", + "JP.AuthForward", + "JP.AuthorizationCode", + "JP.CardSuffix", + "JP.Currency", + "JP.CustomerFirstName", + "JP.CustomerLastName", + "JP.Date", + "JP.Gateway", + "JP.JPOInstallmentMethod", + "JP.JPOPaymentMethod", + "JP.MerchantID", + "JP.MerchantReferenceNumber", + "JP.PaymentMethod", + "JP.RequestID", + "JP.SubscriptionID", + "JP.Time", + "JP.TransactionReferenceNumber", + "JP.TransactionType", + "LineItems.FulfillmentType", + "LineItems.InvoiceNumber", + "LineItems.MerchantProductSku", + "LineItems.ProductCode", + "LineItems.ProductName", + "LineItems.Quantity", + "LineItems.TaxAmount", + "LineItems.UnitPrice", + "MarkAsSuspectFields.MarkingDate", + "MarkAsSuspectFields.MarkingNotes", + "MarkAsSuspectFields.MarkingReason", + "MarkAsSuspectFields.MarkingUserName", + "Merchant-DefinedDataFields.MerchantDefinedData1", + "Merchant-DefinedDataFields.MerchantDefinedData10", + "Merchant-DefinedDataFields.MerchantDefinedData100", + "Merchant-DefinedDataFields.MerchantDefinedData11", + "Merchant-DefinedDataFields.MerchantDefinedData12", + "Merchant-DefinedDataFields.MerchantDefinedData13", + "Merchant-DefinedDataFields.MerchantDefinedData14", + "Merchant-DefinedDataFields.MerchantDefinedData15", + "Merchant-DefinedDataFields.MerchantDefinedData16", + "Merchant-DefinedDataFields.MerchantDefinedData17", + "Merchant-DefinedDataFields.MerchantDefinedData18", + "Merchant-DefinedDataFields.MerchantDefinedData19", + "Merchant-DefinedDataFields.MerchantDefinedData2", + "Merchant-DefinedDataFields.MerchantDefinedData20", + "Merchant-DefinedDataFields.MerchantDefinedData21", + "Merchant-DefinedDataFields.MerchantDefinedData22", + "Merchant-DefinedDataFields.MerchantDefinedData23", + "Merchant-DefinedDataFields.MerchantDefinedData24", + "Merchant-DefinedDataFields.MerchantDefinedData25", + "Merchant-DefinedDataFields.MerchantDefinedData26", + "Merchant-DefinedDataFields.MerchantDefinedData27", + "Merchant-DefinedDataFields.MerchantDefinedData28", + "Merchant-DefinedDataFields.MerchantDefinedData29", + "Merchant-DefinedDataFields.MerchantDefinedData3", + "Merchant-DefinedDataFields.MerchantDefinedData30", + "Merchant-DefinedDataFields.MerchantDefinedData31", + "Merchant-DefinedDataFields.MerchantDefinedData32", + "Merchant-DefinedDataFields.MerchantDefinedData34", + "Merchant-DefinedDataFields.MerchantDefinedData35", + "Merchant-DefinedDataFields.MerchantDefinedData36", + "Merchant-DefinedDataFields.MerchantDefinedData37", + "Merchant-DefinedDataFields.MerchantDefinedData39", + "Merchant-DefinedDataFields.MerchantDefinedData4", + "Merchant-DefinedDataFields.MerchantDefinedData40", + "Merchant-DefinedDataFields.MerchantDefinedData41", + "Merchant-DefinedDataFields.MerchantDefinedData43", + "Merchant-DefinedDataFields.MerchantDefinedData44", + "Merchant-DefinedDataFields.MerchantDefinedData45", + "Merchant-DefinedDataFields.MerchantDefinedData46", + "Merchant-DefinedDataFields.MerchantDefinedData48", + "Merchant-DefinedDataFields.MerchantDefinedData49", + "Merchant-DefinedDataFields.MerchantDefinedData5", + "Merchant-DefinedDataFields.MerchantDefinedData50", + "Merchant-DefinedDataFields.MerchantDefinedData52", + "Merchant-DefinedDataFields.MerchantDefinedData53", + "Merchant-DefinedDataFields.MerchantDefinedData54", + "Merchant-DefinedDataFields.MerchantDefinedData56", + "Merchant-DefinedDataFields.MerchantDefinedData57", + "Merchant-DefinedDataFields.MerchantDefinedData58", + "Merchant-DefinedDataFields.MerchantDefinedData59", + "Merchant-DefinedDataFields.MerchantDefinedData6", + "Merchant-DefinedDataFields.MerchantDefinedData61", + "Merchant-DefinedDataFields.MerchantDefinedData62", + "Merchant-DefinedDataFields.MerchantDefinedData63", + "Merchant-DefinedDataFields.MerchantDefinedData65", + "Merchant-DefinedDataFields.MerchantDefinedData66", + "Merchant-DefinedDataFields.MerchantDefinedData67", + "Merchant-DefinedDataFields.MerchantDefinedData68", + "Merchant-DefinedDataFields.MerchantDefinedData7", + "Merchant-DefinedDataFields.MerchantDefinedData70", + "Merchant-DefinedDataFields.MerchantDefinedData71", + "Merchant-DefinedDataFields.MerchantDefinedData72", + "Merchant-DefinedDataFields.MerchantDefinedData73", + "Merchant-DefinedDataFields.MerchantDefinedData74", + "Merchant-DefinedDataFields.MerchantDefinedData75", + "Merchant-DefinedDataFields.MerchantDefinedData76", + "Merchant-DefinedDataFields.MerchantDefinedData77", + "Merchant-DefinedDataFields.MerchantDefinedData78", + "Merchant-DefinedDataFields.MerchantDefinedData79", + "Merchant-DefinedDataFields.MerchantDefinedData8", + "Merchant-DefinedDataFields.MerchantDefinedData80", + "Merchant-DefinedDataFields.MerchantDefinedData81", + "Merchant-DefinedDataFields.MerchantDefinedData82", + "Merchant-DefinedDataFields.MerchantDefinedData83", + "Merchant-DefinedDataFields.MerchantDefinedData84", + "Merchant-DefinedDataFields.MerchantDefinedData85", + "Merchant-DefinedDataFields.MerchantDefinedData86", + "Merchant-DefinedDataFields.MerchantDefinedData87", + "Merchant-DefinedDataFields.MerchantDefinedData88", + "Merchant-DefinedDataFields.MerchantDefinedData89", + "Merchant-DefinedDataFields.MerchantDefinedData9", + "Merchant-DefinedDataFields.MerchantDefinedData90", + "Merchant-DefinedDataFields.MerchantDefinedData91", + "Merchant-DefinedDataFields.MerchantDefinedData92", + "Merchant-DefinedDataFields.MerchantDefinedData93", + "Merchant-DefinedDataFields.MerchantDefinedData94", + "Merchant-DefinedDataFields.MerchantDefinedData95", + "Merchant-DefinedDataFields.MerchantDefinedData96", + "Merchant-DefinedDataFields.MerchantDefinedData97", + "Merchant-DefinedDataFields.MerchantDefinedData98", + "Merchant-DefinedDataFields.MerchantDefinedData99", + "OctSummary.AccountId", + "OctSummary.ResellerId", + "OctSummary.SettlementAmountCurrency", + "OctSummary.SettlementDate", + "OctSummary.TransactionAmountCurrency", + "OrderFields.ConnectionMethod", + "OrderFields.MerchantID", + "OrderFields.MerchantReferenceNumber", + "OrderFields.ReasonCode", + "OrderFields.ReplyCode", + "OrderFields.ReplyFlag", + "OrderFields.ReplyMessage", + "OrderFields.RequestID", + "OrderFields.ShippingMethod", + "OrderFields.TransactionDate", + "PayerAuth.RequestID", + "PayerAuth.TransactionType", + "PaymentData.ACHVerificationResult", + "PaymentData.ACHVerificationResultMapped", + "PaymentData.AcquirerMerchantID", + "PaymentData.AuthIndicator", + "PaymentData.AuthorizationCode", + "PaymentData.AuthorizationType", + "PaymentData.AuthReversalAmount", + "PaymentData.AuthReversalResult", + "PaymentData.AVSResult", + "PaymentData.AVSResultMapped", + "PaymentData.BalanceAmount", + "PaymentData.BalanceCurrencyCode", + "PaymentData.BinNumber", + "PaymentData.CardCategory", + "PaymentData.CardCategoryCode", + "PaymentData.CardPresent", + "PaymentData.CurrencyCode", + "PaymentData.CVResult", + "PaymentData.DCCIndicator", + "PaymentData.EMVRequestFallBack", + "PaymentData.EVEmail", + "PaymentData.EVEmailRaw", + "PaymentData.EVName", + "PaymentData.EVNameRaw", + "PaymentData.EVPhoneNumber", + "PaymentData.EVPhoneNumberRaw", + "PaymentData.EVPostalCode", + "PaymentData.EVPostalCodeRaw", + "PaymentData.EVStreet", + "PaymentData.EVStreetRaw", + "PaymentData.ExchangeRate", + "PaymentData.ExchangeRateDate", + "PaymentData.MandateReferenceNumber", + "PaymentData.NetworkCode", + "PaymentData.NetworkTransactionID", + "PaymentData.NumberOfInstallments", + "PaymentData.OriginalAmount", + "PaymentData.OriginalCurrency", + "PaymentData.PaymentProductCode", + "PaymentData.POSEntryMode", + "PaymentData.ProcessorMID", + "PaymentData.ProcessorResponseCode", + "PaymentData.ProcessorResponseID", + "PaymentData.ProcessorTID", + "PaymentData.ProcessorTransactionID", + "PaymentData.RequestedAmount", + "PaymentData.RequestedAmountCurrencyCode", + "PaymentData.SubMerchantCity", + "PaymentData.SubMerchantCountry", + "PaymentData.SubMerchantEmail", + "PaymentData.SubMerchantID", + "PaymentData.SubMerchantName", + "PaymentData.SubMerchantPhone", + "PaymentData.SubMerchantPostalCode", + "PaymentData.SubMerchantState", + "PaymentData.SubMerchantStreet", + "PaymentData.TargetAmount", + "PaymentData.TargetCurrency", + "PaymentFields.AccountSuffix", + "PaymentFields.CardBIN", + "PaymentFields.CardBINCountry", + "PaymentFields.CardIssuer", + "PaymentFields.CardScheme", + "PaymentFields.CardType", + "PaymentFields.CardVerificationResult", + "PaymentMethod.AccountSuffix", + "PaymentMethod.AdditionalCardType", + "PaymentMethod.BankAccountName", + "PaymentMethod.BankCode", + "PaymentMethod.BoletoBarCodeNumber", + "PaymentMethod.BoletoNumber", + "PaymentMethod.CardType", + "PaymentMethod.CheckNumber", + "PaymentMethod.ExpirationMonth", + "PaymentMethod.ExpirationYear", + "PaymentMethod.IssueNumber", + "PaymentMethod.MandateId", + "PaymentMethod.StartMonth", + "PaymentMethod.StartYear", + "PaymentMethod.WalletType", + "POSTerminalExceptions.AccountSuffix", + "POSTerminalExceptions.CurrencyCode", + "POSTerminalExceptions.ExpirationMO", + "POSTerminalExceptions.ExpirationYR", + "POSTerminalExceptions.LastName", + "POSTerminalExceptions.MerchantID", + "Recipient.RecipientBillingAmount", + "Recipient.RecipientBillingCurrency", + "Recipient.ReferenceNumber", + "Request.PartnerOriginalTransactionID", + "Sender.Address", + "Sender.City", + "Sender.Country", + "Sender.DOB", + "Sender.FirstName", + "Sender.LastName", + "Sender.MiddleInitial", + "Sender.PhoneNumber", + "Sender.PostalCode", + "Sender.SenderReferenceNumber", + "Sender.SourceOfFunds", + "Sender.State", + "ShipTo.CompanyName", + "Subscriptions.Applications", + "Subscriptions.AuthAVSResults", + "Subscriptions.AuthCardVerificationResult", + "Subscriptions.AuthCode", + "Subscriptions.AuthRCode", + "Subscriptions.AuthResponseCode", + "Subscriptions.AuthType", + "Subscriptions.BillToAddress1", + "Subscriptions.BillToAddress2", + "Subscriptions.BillToCity", + "Subscriptions.BillToCompanyName", + "Subscriptions.BillToCountry", + "Subscriptions.BillToEmail", + "Subscriptions.BillToFirstName", + "Subscriptions.BillToLastName", + "Subscriptions.BillToState", + "Subscriptions.BillToZip", + "Subscriptions.CardType", + "Subscriptions.Comments", + "Subscriptions.ConsumerPhone", + "Subscriptions.CurrencyCode", + "Subscriptions.CustomerCCAccountSuffix", + "Subscriptions.CustomerCCExpiryMonth", + "Subscriptions.CustomerCCExpiryYear", + "Subscriptions.CustomerCCIssueNo", + "Subscriptions.CustomerCCRoutingNumber", + "Subscriptions.CustomerCCStartMonth", + "Subscriptions.CustomerCCStartYear", + "Subscriptions.CustomerCCSubTypeDescription", + "Subscriptions.EcommerceIndicator", + "Subscriptions.IPAddress", + "Subscriptions.MerchantDefinedData1", + "Subscriptions.MerchantDefinedData2", + "Subscriptions.MerchantDefinedData3", + "Subscriptions.MerchantDefinedData4", + "Subscriptions.MerchantRefNo", + "Subscriptions.MerchantSecureData1", + "Subscriptions.MerchantSecureData2", + "Subscriptions.MerchantSecureData3", + "Subscriptions.MerchantSecureData4", + "Subscriptions.PaymentProcessor", + "Subscriptions.PaymentsSuccess", + "Subscriptions.RCode", + "Subscriptions.ReasonCode", + "Subscriptions.RequestID", + "Subscriptions.RequestToken", + "Subscriptions.RFlag", + "Subscriptions.RMsg", + "Subscriptions.ShipToAddress1", + "Subscriptions.ShipToAddress2", + "Subscriptions.ShipToCity", + "Subscriptions.ShipToCompanyName", + "Subscriptions.ShipToCountry", + "Subscriptions.ShipToFirstName", + "Subscriptions.ShipToLastName", + "Subscriptions.ShipToState", + "Subscriptions.ShipToZip", + "Subscriptions.SubscriptionID", + "Subscriptions.TaxAmount", + "Subscriptions.TransactionDate", + "Subscriptions.TransRefNo", + "TaxCalculation.Status", + "Token.NetworkTokenTransType", + "Token.TokenCode", + "TransactionDetails.MerchantId", + "TransactionDetails.PaymentMethodDesc", + "TransactionDetails.PaymentMethodType", + "TransactionDetails.RequestId", + "TravelFields.DepartureTime", + "VelocityMorphing.FieldName", + "VelocityMorphing.InfoCode", + "WhitepagesProFields.EmailDomainCreationDate" + ], + "reportMimeType": "application/xml", + "reportName": "testrest_v2", + "timezone": "GMT", + "reportStartTime": "2020-03-01T12:00:00Z", + "reportEndTime": "2020-03-02T12:00:00Z", + "reportPreferences": { + "signedAmounts": "true", + "fieldNameConvention": "SOAPI" + } + } + } + } + } + }, + "/reporting/v3/reports/{reportId}": { + "get": { + "tags": [ + "Reports" + ], + "summary": "Get Report Based on Report Id", + "description": "Download a report using the reportId value. If you don\u2019t already know this value, you can obtain it using the Retrieve available reports call.\n", + "operationId": "getReportByReportId", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest" + }, + "x-depends": { + "example": { + "path": "/reporting/v3/reports", + "verb": "get", + "exampleId": "Retrieve available reports" + }, + "fieldMapping": [ + { + "sourceField": "reportSearchResults[0].reportId", + "destinationField": "reportId", + "fieldTypeInDestination": "path" + } + ] + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "reportId", + "in": "path", + "description": "Valid Report Id", + "required": true, + "type": "string" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "title": "reportingV3ReportsIdGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "CyberSource merchant id", + "example": "myMerchantId" + }, + "reportId": { + "type": "string", + "description": "Report ID Value", + "example": "6da01922-bb8e-a1fb-e053-7cb8d30ade29" + }, + "reportDefinitionId": { + "type": "string", + "description": "Report definition Id", + "example": "210" + }, + "reportName": { + "type": "string", + "description": "Report Name", + "example": "My Transaction Request report" + }, + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Report Format\n\nValid values:\n- application/xml\n- text/csv\n" + }, + "reportFrequency": { + "type": "string", + "example": "DAILY", + "description": "Report Frequency Value\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- ADHOC\n" + }, + "reportFields": { + "type": "array", + "description": "List of Integer Values", + "items": { + "type": "string" + }, + "example": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID" + ] + }, + "reportStatus": { + "type": "string", + "description": "Report Status Value\n\nValid values:\n- COMPLETED\n- PENDING\n- QUEUED\n- RUNNING\n- ERROR\n- NO_DATA\n- RERUN\n" + }, + "reportStartTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00", + "description": "Report Start Time Value" + }, + "reportEndTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-02T10:10:10+05:00", + "description": "Report End Time Value" + }, + "timezone": { + "type": "string", + "description": "Time Zone Value", + "example": "America/Chicago" + }, + "reportFilters": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "List of filters to apply", + "example": { + "Application.Name": [ + "ics_auth", + "ics_bill" + ] + } + }, + "reportPreferences": { + "description": "Report Preferences", + "type": "object", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + }, + "groupId": { + "type": "string", + "description": "Id for selected group.", + "example": "12345" + } + }, + "description": "Report Log" + } + }, + "400": { + "description": "Invalid Request", + "schema": { + "title": "reportingV3ReportsIdPost400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "No Reports Found" + } + } + } + }, + "/reporting/v3/report-definitions/{reportDefinitionName}": { + "get": { + "tags": [ + "Report Definitions" + ], + "summary": "Get Report Definition", + "description": "View the attributes of an individual report type. For a list of values for reportDefinitionName, see the [Reporting Developer Guide](https://www.cybersource.com/developers/documentation/reporting_and_reconciliation/)\n", + "operationId": "getResourceInfoByReportDefinition", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest" + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "reportDefinitionName", + "in": "path", + "description": "Name of the Report definition to retrieve", + "required": true, + "type": "string" + }, + { + "name": "subscriptionType", + "in": "query", + "description": "The subscription type for which report definition is required. By default the type will be CUSTOM.\nValid Values:\n- CLASSIC\n- CUSTOM\n- STANDARD\n", + "required": false, + "type": "string" + }, + { + "name": "reportMimeType", + "in": "query", + "description": "The format for which the report definition is required. By default the value will be CSV.\nValid Values:\n- application/xml\n- text/csv\n", + "required": false, + "type": "string" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3ReportDefinitionsNameGet200Response", + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "reportDefinitionId": { + "type": "integer", + "format": "int32" + }, + "reportDefintionName": { + "type": "string" + }, + "attributes": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "filterType": { + "type": "string", + "description": "Attribute Filter Type.", + "example": "MULTI" + }, + "default": { + "type": "boolean" + }, + "required": { + "type": "boolean" + }, + "supportedType": { + "type": "string", + "description": "Valid values for the filter.", + "example": [ + "ics_score", + "ics_ap_auth", + "ics_ap_auth_reversal", + "ics_ap_billing_agreement", + "ics_ap_cancel", + "ics_ap_capture", + "ics_ap_initiate", + "ics_ap_options", + "ics_ap_order", + "ics_ap_refund", + "ics_ap_sale", + "ics_ap_sessions", + "ics_ap_check_status", + "ics_auto_auth_reversal", + "ics_bank_transfer", + "ics_bank_transfer_real_time", + "ics_bank_transfer_refund", + "ics_bin_lookup", + "ics_boleto_payment", + "ics_cm_action", + "ics_china_payment", + "ics_china_refund", + "ics_auth", + "ics_auto_full_auth_reversal", + "ics_auth_refresh", + "ics_auth_reversal", + "ics_credit", + "ics_bill", + "ics_risk_update", + "ics_dcc", + "ics_dcc_update", + "ics_decision", + "ics_dm_event", + "ics_direct_debit", + "ics_direct_debit_mandate", + "ics_direct_debit_refund", + "ics_direct_debit_validate", + "ics_ecp_authenticate", + "ics_ecp_credit", + "ics_ecp_debit", + "ics_get_masterpass_data", + "ics_get_visa_checkout_data", + "ics_create_isv", + "ics_get_isv_history", + "ics_add_value_to_isv", + "ics_get_isv_info", + "ics_modify_isv", + "ics_get_isv_profiles", + "ics_redeem_isv", + "ics_ifs_setup", + "ics_ifs_update", + "ics_ipgeo", + "ics_oct", + "ics_pa_enroll", + "ics_pa_validate", + "paypal_mip_agreement_ipn", + "ics_paypal_button_create", + "ics_paypal_credit", + "ics_paypal_authorization", + "ics_paypal_create_agreement", + "ics_paypal_update_agreement", + "ics_paypal_ec_order_setup", + "ics_paypal_auth_reversal", + "ics_paypal_ec_do_payment", + "ics_paypal_do_ref_transaction", + "ics_paypal_refund", + "ics_paypal_do_capture", + "paypal_ipn", + "ics_paypal_preapproved_payment", + "ics_pinless_debit", + "ics_pinless_debit_validate", + "ics_pinless_debit_reversal", + "ics_export", + "ics_service_fee_auth", + "ics_service_fee_auth_reversal", + "ics_service_fee_bill", + "ics_service_fee_credit", + "ics_service_fee_ecp_credit", + "ics_service_fee_ecp_debit", + "ics_pay_subscription_create", + "ics_pay_subscription_create_dup", + "ics_pay_subscription_delete", + "ics_pay_subscription_update", + "ics_dav", + "ics_download", + "ics_tax", + "ics_timeout_auth_reversal", + "ics_timeout_oct_reversal", + "ics_void", + "ics_pin_debit_purchase", + "ics_pin_debit_credit", + "ics_pin_debit_reversal", + "ics_timeout_pin_debit_reversal", + "ics_gift_card_activation", + "ics_gift_card_balance_inquiry", + "ics_gift_card_redemption", + "ics_gift_card_refund", + "ics_gift_card_reload", + "ics_gift_card_void", + "ics_gift_card_reversal" + ] + } + } + } + }, + "supportedFormats": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string", + "description": "Valid values:\n- application/xml\n- text/csv\n" + } + }, + "description": { + "type": "string" + }, + "defaultSettings": { + "type": "object", + "properties": { + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Report Format\nValid values:\n - application/xml\n - text/csv\n" + }, + "reportFrequency": { + "type": "string", + "example": "DAILY", + "description": "Report Frequency Value\nValid Values:\n - DAILY\n - WEEKLY\n - MONTHLY\n - ADHOC\n" + }, + "reportName": { + "type": "string", + "description": "Report Name", + "example": "My Transaction Request Detail Report" + }, + "timezone": { + "type": "string", + "description": "Time Zone", + "example": "America/Chicago" + }, + "startTime": { + "type": "string", + "description": "Start Time", + "example": "0000" + }, + "startDay": { + "type": "integer", + "format": "int32", + "description": "Start Day", + "example": 1 + }, + "reportFilters": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "List of filters to apply", + "example": { + "Application.Name": [ + "ics_auth", + "ics_bill" + ] + } + }, + "reportPreferences": { + "type": "object", + "description": "Report Preferences", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + } + } + }, + "subscriptionType": { + "type": "string", + "example": "CLASSIC", + "description": "'The subscription type for which report definition is required. By default the type will be CUSTOM.'\nValid Values:\n- 'CLASSIC'\n- 'CUSTOM'\n- 'STANDARD'\n" + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ReportDefinitionsNameGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Report not found" + } + } + } + }, + "/reporting/v3/report-definitions": { + "get": { + "tags": [ + "Report Definitions" + ], + "summary": "Get Reporting Resource Information", + "description": "View a list of supported reports and their attributes before subscribing to them.\n", + "operationId": "getResourceV2Info", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest" + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "in": "query", + "name": "subscriptionType", + "required": false, + "type": "string", + "description": "Valid Values:\n- CLASSIC\n- CUSTOM\n- STANDARD\n" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3ReportDefinitionsGet200Response", + "type": "object", + "properties": { + "reportDefinitions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "reportDefinitionId": { + "type": "integer", + "format": "int32", + "description": "| Id | Definition Class |\n| --- | --------------------------------- |\n| 210 | TransactionRequestClass |\n| 211 | PaymentBatchDetailClass |\n| 212 | ExceptionDetailClass |\n| 213 | ProcessorSettlementDetailClass |\n| 214 | ProcessorEventsDetailClass |\n| 215 | FundingDetailClass |\n| 216 | AgingDetailClass |\n| 217 | ChargebackAndRetrievalDetailClass |\n| 218 | DepositDetailClass |\n| 219 | FeeDetailClass |\n| 220 | InvoiceSummaryClass |\n| 221 | PayerAuthDetailClass |\n| 222 | ConversionDetailClass |\n| 270 | JPTransactionDetailClass |\n| 271 | ServiceFeeDetailClass |\n| 310 | GatewayTransactionRequestClass |\n| 400 | DecisionManagerEventDetailClass |\n| 401 | DecisionManagerDetailClass |\n| 410 | FeeSummaryClass |\n| 420 | TaxCalculationClass |\n| 520 | POSTerminalExceptionClass |\n| 620 | SubscriptionDetailClass |\n" + }, + "reportDefintionName": { + "type": "string" + }, + "supportedFormats": { + "type": "array", + "uniqueItems": true, + "items": { + "type": "string", + "description": "Valid values:\n- application/xml\n- text/csv\n" + } + }, + "description": { + "type": "string" + }, + "defaultSettings": { + "type": "object", + "properties": { + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Report Format\nValid values:\n - application/xml\n - text/csv\n" + }, + "reportFrequency": { + "type": "string", + "example": "DAILY", + "description": "Report Frequency Value\nValid Values:\n - DAILY\n - WEEKLY\n - MONTHLY\n - ADHOC\n" + }, + "reportName": { + "type": "string", + "description": "Report Name", + "example": "My Transaction Request Detail Report" + }, + "timezone": { + "type": "string", + "description": "Time Zone", + "example": "America/Chicago" + }, + "startTime": { + "type": "string", + "description": "Start Time", + "example": "0000" + }, + "startDay": { + "type": "integer", + "format": "int32", + "description": "Start Day", + "example": 1 + }, + "reportFilters": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "List of filters to apply", + "example": { + "Application.Name": [ + "ics_auth", + "ics_bill" + ] + } + }, + "reportPreferences": { + "type": "object", + "description": "Report Preferences", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + } + } + }, + "subscriptionType": { + "type": "string", + "example": "CLASSIC", + "description": "'The subscription type for which report definition is required. By default the type will be CUSTOM.'\nValid Values:\n- CLASSIC\n- CUSTOM\n- STANDARD\n" + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ReportDefinitionsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Report not found" + } + } + } + }, + "/reporting/v3/report-subscriptions": { + "get": { + "tags": [ + "Report Subscriptions" + ], + "summary": "Get All Subscriptions", + "description": "View a summary of all report subscriptions.\n", + "operationId": "getAllSubscriptions", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3ReportSubscriptionsGet200Response", + "type": "object", + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Selected Organization Id", + "example": "Merchant 1" + }, + "reportDefinitionId": { + "type": "string", + "description": "Report Definition Id", + "example": "210" + }, + "reportDefinitionName": { + "type": "string", + "description": "Report Definition Class", + "example": "TransactionRequestDetailClass" + }, + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Report Format \n \nValid values:\n- application/xml\n- text/csv\n" + }, + "reportFrequency": { + "type": "string", + "example": "DAILY", + "description": "'Report Frequency'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- USER_DEFINED\n" + }, + "reportInterval": { + "type": "string", + "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", + "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" + }, + "reportName": { + "type": "string", + "description": "Report Name", + "example": "My Transaction Request Detail Report" + }, + "timezone": { + "type": "string", + "description": "Time Zone", + "example": "America/Chicago" + }, + "startTime": { + "type": "string", + "description": "Start Time", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "startDay": { + "type": "integer", + "format": "int32", + "description": "Start Day", + "example": 1 + }, + "reportFields": { + "type": "array", + "example": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID" + ], + "description": "List of all fields String values", + "items": { + "type": "string" + } + }, + "reportFilters": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "List of filters to apply", + "example": { + "Application.Name": [ + "ics_auth", + "ics_bill" + ] + } + }, + "reportPreferences": { + "type": "object", + "description": "Report Preferences", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + }, + "groupId": { + "type": "string", + "example": "12345", + "description": "Id for the selected group." + } + }, + "description": "Subscription Details" + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ReportSubscriptionsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Subscriptions not found" + } + } + }, + "put": { + "tags": [ + "Report Subscriptions" + ], + "summary": "Create Report Subscription for a Report Name by Organization", + "description": "Create a report subscription for your organization. The report name must be unique.\n", + "operationId": "createSubscription", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "in": "body", + "name": "createReportSubscriptionRequest", + "description": "Report subscription request payload", + "required": true, + "schema": { + "type": "object", + "required": [ + "reportDefinitionName", + "reportFields", + "reportName", + "startTime", + "timezone", + "reportFrequency", + "reportMimeType" + ], + "properties": { + "organizationId": { + "type": "string", + "pattern": "[a-zA-Z0-9-_]+", + "description": "Valid CyberSource organizationId", + "example": "Merchant 1" + }, + "reportDefinitionName": { + "type": "string", + "minLength": 1, + "maxLength": 80, + "pattern": "[a-zA-Z0-9-]+", + "description": "Valid Report Definition Name", + "example": "TransactionDetailReportClass" + }, + "reportFields": { + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID" + ] + }, + "reportMimeType": { + "type": "string", + "description": "Valid values:\n- application/xml\n- text/csv\n", + "example": "application/xml" + }, + "reportFrequency": { + "type": "string", + "description": "'The frequency for which subscription is created.'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\nValid Values:\n - 'DAILY'\n - 'WEEKLY'\n - 'MONTHLY'\n - 'USER_DEFINED'\n", + "example": "DAILY" + }, + "reportInterval": { + "type": "string", + "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", + "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" + }, + "reportName": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "[a-zA-Z0-9-_ ]+", + "example": "My Daily Subscription" + }, + "timezone": { + "type": "string", + "example": "America/Chicago" + }, + "startTime": { + "type": "string", + "description": "The hour at which the report generation should start. It should be in hhmm format.", + "example": "0900" + }, + "startDay": { + "type": "integer", + "minimum": 1, + "maximum": 31, + "description": "This is the start day if the frequency is WEEKLY or MONTHLY. The value varies from 1-7 for WEEKLY and 1-31 for MONTHLY. For WEEKLY 1 means Sunday and 7 means Saturday. By default the value is 1." + }, + "reportFilters": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "List of filters to apply", + "example": { + "Application.Name": [ + "ics_auth", + "ics_bill" + ] + } + }, + "reportPreferences": { + "type": "object", + "description": "Report Preferences", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + }, + "groupName": { + "type": "string", + "pattern": "[a-zA-Z0-9-_ ]+", + "description": "Valid GroupName", + "example": "CEMEA Group" + } + } + } + } + ], + "responses": { + "200": { + "description": "Ok" + }, + "304": { + "description": "NOT MODIFIED" + }, + "400": { + "description": "Invalid request", + "schema": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + } + } + }, + "x-example": { + "example0": { + "summary": "Create Report Subscription", + "value": { + "reportDefinitionName": "TransactionRequestClass", + "reportFields": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID", + "AFSFields.IPAddress", + "AFSFields.IPCountry", + "AFSFields.IPRoutingMethod", + "AFSFields.IPState", + "Application.Name", + "BankInfo.Address", + "BankInfo.BranchCode", + "BankInfo.City", + "BankInfo.Country", + "BankInfo.Name", + "BankInfo.SwiftCode", + "BillTo.Address1", + "BillTo.Address2", + "BillTo.City", + "BillTo.CompanyName", + "BillTo.CompanyTaxID", + "BillTo.Country", + "BillTo.Email", + "BillTo.FirstName", + "BillTo.LastName", + "BillTo.MiddleName", + "BillTo.NameSuffix", + "BillTo.PersonalID", + "BillTo.Phone", + "BillTo.State", + "BillTo.Title", + "BillTo.Zip", + "ChargebackAndRetrieval.AdjustmentAmount", + "ChargebackAndRetrieval.AdjustmentCurrency", + "ChargebackAndRetrieval.ARN", + "ChargebackAndRetrieval.CaseIdentifier", + "ChargebackAndRetrieval.CaseNumber", + "ChargebackAndRetrieval.CaseTime", + "ChargebackAndRetrieval.CaseType", + "ChargebackAndRetrieval.ChargebackAmount", + "ChargebackAndRetrieval.ChargebackCurrency", + "ChargebackAndRetrieval.ChargebackMessage", + "ChargebackAndRetrieval.ChargebackReasonCode", + "ChargebackAndRetrieval.ChargebackReasonCodeDescription", + "ChargebackAndRetrieval.ChargebackTime", + "ChargebackAndRetrieval.DocumentIndicator", + "ChargebackAndRetrieval.FeeAmount", + "ChargebackAndRetrieval.FeeCurrency", + "ChargebackAndRetrieval.FinancialImpact", + "ChargebackAndRetrieval.FinancialImpactType", + "ChargebackAndRetrieval.MerchantCategoryCode", + "ChargebackAndRetrieval.PartialIndicator", + "ChargebackAndRetrieval.ResolutionTime", + "ChargebackAndRetrieval.ResolvedToIndicator", + "ChargebackAndRetrieval.RespondByDate", + "ChargebackAndRetrieval.TransactionType", + "Check.AccountEncoderID", + "Check.BankTransitNumber", + "Check.SecCode", + "CustomerFields.BillingAddress1", + "CustomerFields.BillingAddress2", + "CustomerFields.BillingCity", + "CustomerFields.BillingCompanyName", + "CustomerFields.BillingCountry", + "CustomerFields.BillingEmail", + "CustomerFields.BillingFirstName", + "CustomerFields.BillingLastName", + "CustomerFields.BillingPhone", + "CustomerFields.BillingPostalCode", + "CustomerFields.BillingState", + "CustomerFields.CustomerID", + "CustomerFields.CustomerUserName", + "CustomerFields.PersonalId(CPF/CNPJ)", + "CustomerFields.ShippingAddress1", + "CustomerFields.ShippingAddress2", + "CustomerFields.ShippingCity", + "CustomerFields.ShippingCompanyName", + "CustomerFields.ShippingCountry", + "CustomerFields.ShippingFirstName", + "CustomerFields.ShippingLastName", + "CustomerFields.ShippingPhone", + "CustomerFields.ShippingPostalCode", + "CustomerFields.ShippingState", + "DecisionManagerEvents.EventPolicy", + "DecisionManagerEvents.TypeofEvent", + "Device.DeviceID", + "DeviceFingerprintFields.abcd", + "DeviceFingerprintFields.BrowserLanguage", + "DeviceFingerprintFields.DeviceLatitude", + "DeviceFingerprintFields.DeviceLongitude", + "DeviceFingerprintFields.displayNameFinalCheck", + "DeviceFingerprintFields.DMESignOffFieldEdit", + "DeviceFingerprintFields.Fingerprint/DeviceFingerprint", + "DeviceFingerprintFields.FlashEnabled", + "DeviceFingerprintFields.FlashOperatingSystem", + "DeviceFingerprintFields.FlashVersion", + "DeviceFingerprintFields.GPSAccuracy", + "DeviceFingerprintFields.ImagesEnabled", + "DeviceFingerprintFields.Jailbreak/RootPrivileges", + "DeviceFingerprintFields.JavaScriptEnabled", + "DeviceFingerprintFields.ProfiledURL", + "DeviceFingerprintFields.ProxyIPAddress", + "DeviceFingerprintFields.ProxyIPAddressActivities", + "DeviceFingerprintFields.ProxyServerType", + "DeviceFingerprintFields.ScreenResolution", + "DeviceFingerprintFields.SignOffFieldDMEEditNewOne", + "DeviceFingerprintFields.SmartID", + "DeviceFingerprintFields.SmartIDConfidenceLevel", + "DeviceFingerprintFields.TimeOnPage", + "DeviceFingerprintFields.TrueIPAddress", + "DeviceFingerprintFields.TrueIPAddressActivities", + "DeviceFingerprintFields.TrueIPAddressAttributes", + "DeviceFingerprintFields.txdea1", + "DeviceFingerprintFields.txdesv", + "EmailageFields.FraudType", + "EmailageFields.IP Postal", + "EmailageFields.IPCity", + "EmailageFields.IPCountry", + "EmailageFields.IPRegion", + "EmailageFields.SourceIndustry", + "Event.Amount", + "Event.CurrencyCode", + "Event.Event", + "Event.EventDate", + "Event.ProcessorMessage", + "Exception.Action", + "Exception.CYBSExceptionID", + "Exception.DccLookupStatus", + "Exception.ExceptionAmount", + "Exception.ExceptionAmountCurrency", + "Exception.ExceptionCategory", + "Exception.ExceptionDate", + "Exception.ExceptionDescription", + "Exception.ExceptionDeviceHardwareRevision", + "Exception.ExceptionDeviceID", + "Exception.ExceptionDeviceOS", + "Exception.ExceptionDeviceOSVersion", + "Exception.ExceptionDeviceTerminalID", + "Exception.ExceptionMessage", + "Exception.ExceptionReasonDescription", + "Exception.ExceptionStatus", + "Exception.ExceptionStatusCode", + "Exception.ExceptionType", + "Exception.FinancialStatus", + "Exception.LastActionDate", + "Exception.NextActionDate", + "Exception.OriginalTransactionSubmissionDate", + "Exception.PaymentNumber", + "Exception.ProcessorCaseID", + "Exception.ProcessorResponseCode", + "Exception.ReasonCode", + "Exception.RetryCount", + "Fee.AssessmentAmount", + "Fee.AssessmentCurrency", + "Fee.BillingCycle", + "Fee.BillingType", + "Fee.ClearedInterchangeLevel", + "Fee.DiscountAmount", + "Fee.DiscountCurrency", + "Fee.DiscountRate", + "Fee.DowngradeReasonCode", + "Fee.InterchangeAmount", + "Fee.InterchangeCurrency", + "Fee.InterchangeRate", + "Fee.PerItemFeeAmount", + "Fee.PerItemFeeCurrency", + "Fee.PricedInterchangeLevel", + "Fee.ServiceFeeAmount", + "Fee.ServiceFeeAmountCcy", + "Fee.ServiceFeeFixedAmount", + "Fee.ServiceFeeFixedAmountCcy", + "Fee.ServiceFeeRate", + "Fee.SettlementAmount", + "Fee.SettlementCurrency", + "Fee.SettlementTime", + "Fee.SettlementTimeZone", + "Fee.SourceDescriptor", + "Fee.TotalFeeAmount", + "Fee.TotalFeeCurrency", + "Funding.AdjustmentAmount", + "Funding.AdjustmentCurrency", + "Funding.AdjustmentDescription", + "Funding.AdjustmentType", + "FundTransfer.BankCheckDigit", + "FundTransfer.IbanIndicator", + "Invoice.BillingGroupDescription", + "Invoice.NotProcessed", + "Invoice.OrganizationID", + "Invoice.PerformedServices", + "Invoice.Processed", + "Invoice.Total", + "JP.Amount", + "JP.AuthForward", + "JP.AuthorizationCode", + "JP.CardSuffix", + "JP.Currency", + "JP.CustomerFirstName", + "JP.CustomerLastName", + "JP.Date", + "JP.Gateway", + "JP.JPOInstallmentMethod", + "JP.JPOPaymentMethod", + "JP.MerchantID", + "JP.MerchantReferenceNumber", + "JP.PaymentMethod", + "JP.RequestID", + "JP.SubscriptionID", + "JP.Time", + "JP.TransactionReferenceNumber", + "JP.TransactionType", + "LineItems.FulfillmentType", + "LineItems.InvoiceNumber", + "LineItems.MerchantProductSku", + "LineItems.ProductCode", + "LineItems.ProductName", + "LineItems.Quantity", + "LineItems.TaxAmount", + "LineItems.UnitPrice", + "MarkAsSuspectFields.MarkingDate", + "MarkAsSuspectFields.MarkingNotes", + "MarkAsSuspectFields.MarkingReason", + "MarkAsSuspectFields.MarkingUserName", + "Merchant-DefinedDataFields.MerchantDefinedData1", + "Merchant-DefinedDataFields.MerchantDefinedData10", + "Merchant-DefinedDataFields.MerchantDefinedData100", + "Merchant-DefinedDataFields.MerchantDefinedData11", + "Merchant-DefinedDataFields.MerchantDefinedData12", + "Merchant-DefinedDataFields.MerchantDefinedData13", + "Merchant-DefinedDataFields.MerchantDefinedData14", + "Merchant-DefinedDataFields.MerchantDefinedData15", + "Merchant-DefinedDataFields.MerchantDefinedData16", + "Merchant-DefinedDataFields.MerchantDefinedData17", + "Merchant-DefinedDataFields.MerchantDefinedData18", + "Merchant-DefinedDataFields.MerchantDefinedData19", + "Merchant-DefinedDataFields.MerchantDefinedData2", + "Merchant-DefinedDataFields.MerchantDefinedData20", + "Merchant-DefinedDataFields.MerchantDefinedData21", + "Merchant-DefinedDataFields.MerchantDefinedData22", + "Merchant-DefinedDataFields.MerchantDefinedData23", + "Merchant-DefinedDataFields.MerchantDefinedData24", + "Merchant-DefinedDataFields.MerchantDefinedData25", + "Merchant-DefinedDataFields.MerchantDefinedData26", + "Merchant-DefinedDataFields.MerchantDefinedData27", + "Merchant-DefinedDataFields.MerchantDefinedData28", + "Merchant-DefinedDataFields.MerchantDefinedData29", + "Merchant-DefinedDataFields.MerchantDefinedData3", + "Merchant-DefinedDataFields.MerchantDefinedData30", + "Merchant-DefinedDataFields.MerchantDefinedData31", + "Merchant-DefinedDataFields.MerchantDefinedData32", + "Merchant-DefinedDataFields.MerchantDefinedData34", + "Merchant-DefinedDataFields.MerchantDefinedData35", + "Merchant-DefinedDataFields.MerchantDefinedData36", + "Merchant-DefinedDataFields.MerchantDefinedData37", + "Merchant-DefinedDataFields.MerchantDefinedData39", + "Merchant-DefinedDataFields.MerchantDefinedData4", + "Merchant-DefinedDataFields.MerchantDefinedData40", + "Merchant-DefinedDataFields.MerchantDefinedData41", + "Merchant-DefinedDataFields.MerchantDefinedData43", + "Merchant-DefinedDataFields.MerchantDefinedData44", + "Merchant-DefinedDataFields.MerchantDefinedData45", + "Merchant-DefinedDataFields.MerchantDefinedData46", + "Merchant-DefinedDataFields.MerchantDefinedData48", + "Merchant-DefinedDataFields.MerchantDefinedData49", + "Merchant-DefinedDataFields.MerchantDefinedData5", + "Merchant-DefinedDataFields.MerchantDefinedData50", + "Merchant-DefinedDataFields.MerchantDefinedData52", + "Merchant-DefinedDataFields.MerchantDefinedData53", + "Merchant-DefinedDataFields.MerchantDefinedData54", + "Merchant-DefinedDataFields.MerchantDefinedData56", + "Merchant-DefinedDataFields.MerchantDefinedData57", + "Merchant-DefinedDataFields.MerchantDefinedData58", + "Merchant-DefinedDataFields.MerchantDefinedData59", + "Merchant-DefinedDataFields.MerchantDefinedData6", + "Merchant-DefinedDataFields.MerchantDefinedData61", + "Merchant-DefinedDataFields.MerchantDefinedData62", + "Merchant-DefinedDataFields.MerchantDefinedData63", + "Merchant-DefinedDataFields.MerchantDefinedData65", + "Merchant-DefinedDataFields.MerchantDefinedData66", + "Merchant-DefinedDataFields.MerchantDefinedData67", + "Merchant-DefinedDataFields.MerchantDefinedData68", + "Merchant-DefinedDataFields.MerchantDefinedData7", + "Merchant-DefinedDataFields.MerchantDefinedData70", + "Merchant-DefinedDataFields.MerchantDefinedData71", + "Merchant-DefinedDataFields.MerchantDefinedData72", + "Merchant-DefinedDataFields.MerchantDefinedData73", + "Merchant-DefinedDataFields.MerchantDefinedData74", + "Merchant-DefinedDataFields.MerchantDefinedData75", + "Merchant-DefinedDataFields.MerchantDefinedData76", + "Merchant-DefinedDataFields.MerchantDefinedData77", + "Merchant-DefinedDataFields.MerchantDefinedData78", + "Merchant-DefinedDataFields.MerchantDefinedData79", + "Merchant-DefinedDataFields.MerchantDefinedData8", + "Merchant-DefinedDataFields.MerchantDefinedData80", + "Merchant-DefinedDataFields.MerchantDefinedData81", + "Merchant-DefinedDataFields.MerchantDefinedData82", + "Merchant-DefinedDataFields.MerchantDefinedData83", + "Merchant-DefinedDataFields.MerchantDefinedData84", + "Merchant-DefinedDataFields.MerchantDefinedData85", + "Merchant-DefinedDataFields.MerchantDefinedData86", + "Merchant-DefinedDataFields.MerchantDefinedData87", + "Merchant-DefinedDataFields.MerchantDefinedData88", + "Merchant-DefinedDataFields.MerchantDefinedData89", + "Merchant-DefinedDataFields.MerchantDefinedData9", + "Merchant-DefinedDataFields.MerchantDefinedData90", + "Merchant-DefinedDataFields.MerchantDefinedData91", + "Merchant-DefinedDataFields.MerchantDefinedData92", + "Merchant-DefinedDataFields.MerchantDefinedData93", + "Merchant-DefinedDataFields.MerchantDefinedData94", + "Merchant-DefinedDataFields.MerchantDefinedData95", + "Merchant-DefinedDataFields.MerchantDefinedData96", + "Merchant-DefinedDataFields.MerchantDefinedData97", + "Merchant-DefinedDataFields.MerchantDefinedData98", + "Merchant-DefinedDataFields.MerchantDefinedData99", + "OctSummary.AccountId", + "OctSummary.ResellerId", + "OctSummary.SettlementAmountCurrency", + "OctSummary.SettlementDate", + "OctSummary.TransactionAmountCurrency", + "OrderFields.ConnectionMethod", + "OrderFields.MerchantID", + "OrderFields.MerchantReferenceNumber", + "OrderFields.ReasonCode", + "OrderFields.ReplyCode", + "OrderFields.ReplyFlag", + "OrderFields.ReplyMessage", + "OrderFields.RequestID", + "OrderFields.ShippingMethod", + "OrderFields.TransactionDate", + "PayerAuth.RequestID", + "PayerAuth.TransactionType", + "PaymentData.ACHVerificationResult", + "PaymentData.ACHVerificationResultMapped", + "PaymentData.AcquirerMerchantID", + "PaymentData.AuthIndicator", + "PaymentData.AuthorizationCode", + "PaymentData.AuthorizationType", + "PaymentData.AuthReversalAmount", + "PaymentData.AuthReversalResult", + "PaymentData.AVSResult", + "PaymentData.AVSResultMapped", + "PaymentData.BalanceAmount", + "PaymentData.BalanceCurrencyCode", + "PaymentData.BinNumber", + "PaymentData.CardCategory", + "PaymentData.CardCategoryCode", + "PaymentData.CardPresent", + "PaymentData.CurrencyCode", + "PaymentData.CVResult", + "PaymentData.DCCIndicator", + "PaymentData.EMVRequestFallBack", + "PaymentData.EVEmail", + "PaymentData.EVEmailRaw", + "PaymentData.EVName", + "PaymentData.EVNameRaw", + "PaymentData.EVPhoneNumber", + "PaymentData.EVPhoneNumberRaw", + "PaymentData.EVPostalCode", + "PaymentData.EVPostalCodeRaw", + "PaymentData.EVStreet", + "PaymentData.EVStreetRaw", + "PaymentData.ExchangeRate", + "PaymentData.ExchangeRateDate", + "PaymentData.MandateReferenceNumber", + "PaymentData.NetworkCode", + "PaymentData.NetworkTransactionID", + "PaymentData.NumberOfInstallments", + "PaymentData.OriginalAmount", + "PaymentData.OriginalCurrency", + "PaymentData.PaymentProductCode", + "PaymentData.POSEntryMode", + "PaymentData.ProcessorMID", + "PaymentData.ProcessorResponseCode", + "PaymentData.ProcessorResponseID", + "PaymentData.ProcessorTID", + "PaymentData.ProcessorTransactionID", + "PaymentData.RequestedAmount", + "PaymentData.RequestedAmountCurrencyCode", + "PaymentData.SubMerchantCity", + "PaymentData.SubMerchantCountry", + "PaymentData.SubMerchantEmail", + "PaymentData.SubMerchantID", + "PaymentData.SubMerchantName", + "PaymentData.SubMerchantPhone", + "PaymentData.SubMerchantPostalCode", + "PaymentData.SubMerchantState", + "PaymentData.SubMerchantStreet", + "PaymentData.TargetAmount", + "PaymentData.TargetCurrency", + "PaymentFields.AccountSuffix", + "PaymentFields.CardBIN", + "PaymentFields.CardBINCountry", + "PaymentFields.CardIssuer", + "PaymentFields.CardScheme", + "PaymentFields.CardType", + "PaymentFields.CardVerificationResult", + "PaymentMethod.AccountSuffix", + "PaymentMethod.AdditionalCardType", + "PaymentMethod.BankAccountName", + "PaymentMethod.BankCode", + "PaymentMethod.BoletoBarCodeNumber", + "PaymentMethod.BoletoNumber", + "PaymentMethod.CardType", + "PaymentMethod.CheckNumber", + "PaymentMethod.ExpirationMonth", + "PaymentMethod.ExpirationYear", + "PaymentMethod.IssueNumber", + "PaymentMethod.MandateId", + "PaymentMethod.StartMonth", + "PaymentMethod.StartYear", + "PaymentMethod.WalletType", + "POSTerminalExceptions.AccountSuffix", + "POSTerminalExceptions.CurrencyCode", + "POSTerminalExceptions.ExpirationMO", + "POSTerminalExceptions.ExpirationYR", + "POSTerminalExceptions.LastName", + "POSTerminalExceptions.MerchantID", + "Recipient.RecipientBillingAmount", + "Recipient.RecipientBillingCurrency", + "Recipient.ReferenceNumber", + "Request.PartnerOriginalTransactionID", + "Sender.Address", + "Sender.City", + "Sender.Country", + "Sender.DOB", + "Sender.FirstName", + "Sender.LastName", + "Sender.MiddleInitial", + "Sender.PhoneNumber", + "Sender.PostalCode", + "Sender.SenderReferenceNumber", + "Sender.SourceOfFunds", + "Sender.State", + "ShipTo.CompanyName", + "Subscriptions.Applications", + "Subscriptions.AuthAVSResults", + "Subscriptions.AuthCardVerificationResult", + "Subscriptions.AuthCode", + "Subscriptions.AuthRCode", + "Subscriptions.AuthResponseCode", + "Subscriptions.AuthType", + "Subscriptions.BillToAddress1", + "Subscriptions.BillToAddress2", + "Subscriptions.BillToCity", + "Subscriptions.BillToCompanyName", + "Subscriptions.BillToCountry", + "Subscriptions.BillToEmail", + "Subscriptions.BillToFirstName", + "Subscriptions.BillToLastName", + "Subscriptions.BillToState", + "Subscriptions.BillToZip", + "Subscriptions.CardType", + "Subscriptions.Comments", + "Subscriptions.ConsumerPhone", + "Subscriptions.CurrencyCode", + "Subscriptions.CustomerCCAccountSuffix", + "Subscriptions.CustomerCCExpiryMonth", + "Subscriptions.CustomerCCExpiryYear", + "Subscriptions.CustomerCCIssueNo", + "Subscriptions.CustomerCCRoutingNumber", + "Subscriptions.CustomerCCStartMonth", + "Subscriptions.CustomerCCStartYear", + "Subscriptions.CustomerCCSubTypeDescription", + "Subscriptions.EcommerceIndicator", + "Subscriptions.IPAddress", + "Subscriptions.MerchantDefinedData1", + "Subscriptions.MerchantDefinedData2", + "Subscriptions.MerchantDefinedData3", + "Subscriptions.MerchantDefinedData4", + "Subscriptions.MerchantRefNo", + "Subscriptions.MerchantSecureData1", + "Subscriptions.MerchantSecureData2", + "Subscriptions.MerchantSecureData3", + "Subscriptions.MerchantSecureData4", + "Subscriptions.PaymentProcessor", + "Subscriptions.PaymentsSuccess", + "Subscriptions.RCode", + "Subscriptions.ReasonCode", + "Subscriptions.RequestID", + "Subscriptions.RequestToken", + "Subscriptions.RFlag", + "Subscriptions.RMsg", + "Subscriptions.ShipToAddress1", + "Subscriptions.ShipToAddress2", + "Subscriptions.ShipToCity", + "Subscriptions.ShipToCompanyName", + "Subscriptions.ShipToCountry", + "Subscriptions.ShipToFirstName", + "Subscriptions.ShipToLastName", + "Subscriptions.ShipToState", + "Subscriptions.ShipToZip", + "Subscriptions.SubscriptionID", + "Subscriptions.TaxAmount", + "Subscriptions.TransactionDate", + "Subscriptions.TransRefNo", + "TaxCalculation.Status", + "Token.NetworkTokenTransType", + "Token.TokenCode", + "TransactionDetails.MerchantId", + "TransactionDetails.PaymentMethodDesc", + "TransactionDetails.PaymentMethodType", + "TransactionDetails.RequestId", + "TravelFields.DepartureTime", + "VelocityMorphing.FieldName", + "VelocityMorphing.InfoCode", + "WhitepagesProFields.EmailDomainCreationDate" + ], + "reportMimeType": "application/xml", + "reportFrequency": "WEEKLY", + "reportName": "testrest_subcription_v1", + "timezone": "GMT", + "startTime": "0900", + "startDay": "1" + } + } + } + } + }, + "/reporting/v3/report-subscriptions/{reportName}": { + "get": { + "tags": [ + "Report Subscriptions" + ], + "summary": "Get Subscription for Report Name", + "description": "View the details of a report subscription, such as the report format or report frequency, using the report\u2019s unique name.\n", + "operationId": "getSubscription", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-depends": { + "example": { + "path": "/reporting/v3/report-subscriptions", + "verb": "get", + "exampleId": "Get all subscriptions" + }, + "fieldMapping": [ + { + "sourceField": "_embedded.Subscriptions[0].reportName", + "destinationField": "reportName", + "fieldTypeInDestination": "path" + } + ] + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "reportName", + "in": "path", + "description": "Name of the Report to Retrieve", + "required": true, + "type": "string", + "maxLength": 80, + "minLength": 1, + "pattern": "[a-zA-Z0-9-_+]+" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3ReportsSubscriptionsNameGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Selected Organization Id", + "example": "Merchant 1" + }, + "reportDefinitionId": { + "type": "string", + "description": "Report Definition Id", + "example": "210" + }, + "reportDefinitionName": { + "type": "string", + "description": "Report Definition Class", + "example": "TransactionRequestDetailClass" + }, + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Report Format \n \nValid values:\n- application/xml\n- text/csv\n" + }, + "reportFrequency": { + "type": "string", + "example": "DAILY", + "description": "'Report Frequency'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\n\nValid values:\n- DAILY\n- WEEKLY\n- MONTHLY\n- USER_DEFINED\n" + }, + "reportInterval": { + "type": "string", + "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", + "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" + }, + "reportName": { + "type": "string", + "description": "Report Name", + "example": "My Transaction Request Detail Report" + }, + "timezone": { + "type": "string", + "description": "Time Zone", + "example": "America/Chicago" + }, + "startTime": { + "type": "string", + "description": "Start Time", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "startDay": { + "type": "integer", + "format": "int32", + "description": "Start Day", + "example": 1 + }, + "reportFields": { + "type": "array", + "example": [ + "Request.RequestID", + "Request.TransactionDate", + "Request.MerchantID" + ], + "description": "List of all fields String values", + "items": { + "type": "string" + } + }, + "reportFilters": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "List of filters to apply", + "example": { + "Application.Name": [ + "ics_auth", + "ics_bill" + ] + } + }, + "reportPreferences": { + "type": "object", + "description": "Report Preferences", + "properties": { + "signedAmounts": { + "type": "boolean", + "description": "Indicator to determine whether negative sign infront of amount for all refunded transaction" + }, + "fieldNameConvention": { + "type": "string", + "description": "Specify the field naming convention to be followed in reports (applicable to only csv report formats)\n\nValid values:\n- SOAPI\n- SCMP\n" + } + } + }, + "groupId": { + "type": "string", + "example": "12345", + "description": "Id for the selected group." + } + }, + "description": "Subscription Details" + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ReportSubscriptionsNameGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Subscription not found" + } + } + }, + "delete": { + "tags": [ + "Report Subscriptions" + ], + "summary": "Delete Subscription of a Report Name by Organization", + "description": "Delete a report subscription for your organization. You must know the unique name of the report you want to delete.\n", + "operationId": "deleteSubscription", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "x-depends": { + "example": { + "path": "/reporting/v3/report-subscriptions/{reportName}", + "verb": "get", + "exampleId": "Get subscription for report name" + }, + "fieldMapping": [ + { + "sourceField": "reportName", + "destinationField": "reportName", + "fieldTypeInDestination": "path" + } + ] + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "reportName", + "in": "path", + "description": "Name of the Report to Delete", + "required": true, + "type": "string", + "maxLength": 80, + "minLength": 1, + "pattern": "[a-zA-Z0-9-_+]+" + } + ], + "responses": { + "200": { + "description": "Ok" + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ReportSubscriptionsNameDelete400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Subscription not found", + "schema": { + "title": "reportingV3ReportSubscriptionsnameDelete404Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + } + } + } + }, + "/reporting/v3/predefined-report-subscriptions": { + "put": { + "tags": [ + "Report Subscriptions" + ], + "summary": "Create a Standard or Classic Subscription", + "description": "Create or update an already existing classic or standard subscription.\n", + "operationId": "createStandardOrClassicSubscription", + "x-devcenter-metaData": { + "categoryTag": "Reporting" + }, + "produces": [ + "application/hal+json" + ], + "parameters": [ + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "in": "body", + "name": "predefinedSubscriptionRequestBean", + "description": "Report subscription request payload", + "required": true, + "schema": { + "type": "object", + "required": [ + "reportDefinitionName", + "subscriptionType" + ], + "properties": { + "reportDefinitionName": { + "type": "string", + "minLength": 1, + "maxLength": 80, + "pattern": "[a-zA-Z]+", + "description": "Valid Report Definition Name", + "example": "TransactionDetailReportClass" + }, + "subscriptionType": { + "description": "The subscription type for which report definition is required. Valid values are CLASSIC and STANDARD.\nValid Values:\n - CLASSIC\n - STANDARD\n", + "type": "string" + }, + "reportName": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "pattern": "[a-zA-Z0-9-_ ]+", + "example": "TransactionDetailReport_Daily_Classic" + }, + "reportMimeType": { + "type": "string", + "example": "application/xml", + "description": "Report Format \nValid Values:\n - application/xml\n - text/csv\n" + }, + "reportFrequency": { + "type": "string", + "description": "'The frequency for which subscription is created. For Standard we can have DAILY, WEEKLY and MONTHLY. But for Classic we will have only DAILY.'\n**NOTE: Do not document USER_DEFINED Frequency field in developer center**\nValid Values:\n- 'DAILY'\n- 'WEEKLY'\n- 'MONTHLY'\n- 'USER_DEFINED'\n", + "example": "DAILY" + }, + "reportInterval": { + "type": "string", + "pattern": "^PT((([1-9]|1[0-9]|2[0-3])H(([1-9]|[1-4][0-9]|5[0-9])M)?)|((([1-9]|1[0-9]|2[0-3])H)?([1-9]|[1-4][0-9]|5[0-9])M))$", + "description": "If the reportFrequency is User-defined, reportInterval should be in **ISO 8601 time format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Time Format](https://en.wikipedia.org/wiki/ISO_8601#Durations)\n\n**Example time format for 2 hours and 30 Mins:**\n - PT2H30M\n**NOTE: Do not document reportInterval field in developer center**\n" + }, + "timezone": { + "type": "string", + "description": "By Default the timezone for Standard subscription is PST. And for Classic subscription it will be GMT. If user provides any other time zone apart from PST for Standard subscription api should error out.", + "example": "America/Los_Angeles" + }, + "startTime": { + "type": "string", + "description": "The hour at which the report generation should start. It should be in hhmm format. By Default it will be 0000. The format is 24 hours format.", + "example": "0900" + }, + "startDay": { + "type": "integer", + "minimum": 1, + "maximum": 31, + "description": "This is the start day if the frequency is WEEKLY or MONTHLY. The value varies from 1-7 for WEEKLY and 1-31 for MONTHLY. For WEEKLY 1 means Sunday and 7 means Saturday. By default the value is 1." + }, + "subscriptionStatus": { + "type": "string", + "description": "The status for subscription which is either created or updated. By default it is ACTIVE.\nValid Values:\n - ACTIVE\n - INACTIVE\n", + "example": "ACTIVE" + } + } + } + } + ], + "responses": { + "200": { + "description": "Ok" + }, + "201": { + "description": "Created" + }, + "400": { + "description": "Invalid request", + "schema": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + } + } + }, + "x-example": { + "example0": { + "summary": "Create Classic/Standard Report Subscription", + "value": { + "reportDefinitionName": "TransactionRequestClass", + "subscriptionType": "CLASSIC" + } + } + } + } + }, + "/reporting/v3/notification-of-changes": { + "get": { + "tags": [ + "Notification Of Changes" + ], + "summary": "Get Notification of Changes", + "description": "Download the Notification of Change report. This report shows eCheck-related fields updated as a result of a response to an eCheck settlement transaction.\n", + "operationId": "getNotificationOfChangeReport", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "text/csv", + "application/xml", + "application/hal+json" + ] + } + }, + "x-queryParameterDefaults": { + "startTime": "2020-03-01T12:00:00Z", + "endTime": "2020-03-10T12:00:00Z" + }, + "produces": [ + "application/hal+json", + "text/csv", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3NotificationofChangesGet200Response", + "type": "object", + "properties": { + "notificationOfChanges": { + "type": "array", + "description": "List of Notification Of Change Info values", + "items": { + "type": "object", + "properties": { + "merchantReferenceNumber": { + "type": "string", + "example": "TC30877-10", + "description": "Merchant Reference Number" + }, + "transactionReferenceNumber": { + "type": "string", + "example": "55563", + "description": "Transaction Reference Number" + }, + "time": { + "type": "string", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "description": "Notification Of Change Date(ISO 8601 Extended)" + }, + "code": { + "type": "string", + "example": "TC30877-10", + "description": "Merchant Reference Number" + }, + "accountType": { + "type": "string", + "example": "Checking Account", + "description": "Account Type" + }, + "routingNumber": { + "type": "string", + "example": "123456789", + "description": "Routing Number" + }, + "accountNumber": { + "type": "string", + "example": "############1234", + "description": "Account Number" + }, + "consumerName": { + "type": "string", + "example": "Consumer Name", + "description": "Consumer Name" + } + }, + "description": "Notification Of Change" + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3NotificationofChangesGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "401": { + "description": "Unauthorized. Token provided is no more valid." + }, + "404": { + "description": "Report not found", + "schema": { + "title": "reportingV3NotificationofChangesGet404Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "500": { + "description": "Internal Server Error", + "schema": { + "title": "reportingV3NotificationofChangesGet500Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + } + } + } + }, + "/reporting/v3/purchase-refund-details": { + "get": { + "tags": [ + "Purchase And Refund Details" + ], + "summary": "Get Purchase and Refund Details", + "description": "Download the Purchase and Refund Details report. This report report includes all purchases and refund transactions, as well as all activities related to transactions resulting in an adjustment to the net proceeds.\n", + "operationId": "getPurchaseAndRefundDetails", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "text/csv", + "application/xml", + "application/hal+json" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2020-01-01T12:00:00Z", + "endTime": "2020-01-30T12:00:00Z", + "groupName": "groupName", + "paymentSubtype": "VI", + "viewBy": "requestDate", + "offset": "20", + "limit": "2000" + }, + "produces": [ + "application/hal+json", + "application/xml", + "text/csv" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "paymentSubtype", + "in": "query", + "description": "Payment Subtypes.\n - **ALL**: All Payment Subtypes\n - **VI** : Visa\n - **MC** : Master Card\n - **AX** : American Express\n - **DI** : Discover\n - **DP** : Pinless Debit\n", + "required": false, + "type": "string", + "default": "ALL" + }, + { + "name": "viewBy", + "in": "query", + "description": "View results by Request Date or Submission Date.\n - **requestDate** : Request Date\n - **submissionDate**: Submission Date\n", + "required": false, + "type": "string", + "default": "requestDate" + }, + { + "name": "groupName", + "in": "query", + "description": "Valid CyberSource Group Name.User can define groups using CBAPI and Group Management Module in EBC2. Groups are collection of organizationIds", + "required": false, + "type": "string" + }, + { + "name": "offset", + "in": "query", + "description": "Offset of the Purchase and Refund Results.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "limit", + "in": "query", + "description": "Results count per page. Range(1-2000)", + "required": false, + "type": "integer", + "minimum": 1, + "maximum": 2000, + "default": 2000, + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3PurchaseRefundDetailsGet200Response", + "properties": { + "offset": { + "type": "integer" + }, + "limit": { + "type": "integer" + }, + "pageResults": { + "type": "integer" + }, + "requestDetails": { + "type": "array", + "description": "List of Request Info values", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "example": "12345678901234567890123456", + "description": "An unique identification number assigned by CyberSource to identify the submitted request." + }, + "cybersourceMerchantId": { + "type": "string", + "example": "Cybersource Merchant Id", + "description": "Cybersource Merchant Id" + }, + "processorMerchantId": { + "type": "string", + "example": "Processor Merchant Id", + "description": "Cybersource Processor Merchant Id" + }, + "groupName": { + "type": "string", + "example": "996411990498708810001", + "description": "Group Name" + }, + "transactionReferenceNumber": { + "type": "string", + "example": "RZ3J9WCS9J33", + "description": "Transaction Reference Number" + }, + "merchantReferenceNumber": { + "type": "string", + "example": "47882339", + "description": "Merchant Reference Number" + } + }, + "description": "Request Info Section" + } + }, + "settlements": { + "type": "array", + "description": "List of Settlement Info values", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "example": "12345678901234567890123456", + "description": "An unique identification number assigned by CyberSource to identify the submitted request." + }, + "transactionType": { + "type": "string", + "example": "Purchases", + "description": "Transaction Type" + }, + "submissionTime": { + "type": "string", + "example": "2017-10-01T10:10:10+05:00", + "description": "Submission Date", + "format": "date-time" + }, + "amount": { + "type": "string", + "example": "23.00", + "description": "Amount" + }, + "currencyCode": { + "type": "string", + "example": "USD", + "description": "Valid ISO 4217 ALPHA-3 currency code" + }, + "paymentMethod": { + "type": "string", + "example": "VISA", + "description": "payment method" + }, + "walletType": { + "type": "string", + "example": "V.me", + "description": "Solution Type (Wallet)" + }, + "paymentType": { + "type": "string", + "example": "credit card", + "description": "Payment Type" + }, + "accountSuffix": { + "type": "string", + "example": "0004", + "description": "Account Suffix" + }, + "cybersourceBatchTime": { + "type": "string", + "example": "2017-10-01T10:10:10+05:00", + "description": "Cybersource Batch Time", + "format": "date-time" + }, + "cybersourceBatchId": { + "type": "string", + "example": "123123123123123", + "description": "Cybersource Batch Id" + }, + "cardType": { + "type": "string", + "example": "null", + "description": "Card Type" + }, + "debitNetwork": { + "type": "string", + "example": "", + "description": "Debit Network" + } + } + } + }, + "authorizations": { + "type": "array", + "description": "List of Authorization Info values", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "example": "12345678901234567890123456", + "description": "An unique identification number assigned by CyberSource to identify the submitted request." + }, + "transactionReferenceNumber": { + "type": "string", + "example": "RZ3J9WCS9J27", + "description": "Authorization Transaction Reference Number" + }, + "time": { + "type": "string", + "example": "2017-10-01T10:10:10+05:00", + "description": "Authorization Date", + "format": "date-time" + }, + "authorizationRequestId": { + "type": "string", + "example": "12345678901234567890123459", + "description": "Authorization Request Id" + }, + "amount": { + "type": "string", + "example": "2.50", + "description": "Authorization Amount" + }, + "currencyCode": { + "type": "string", + "example": "USD", + "description": "Valid ISO 4217 ALPHA-3 currency code" + }, + "code": { + "type": "string", + "example": "160780", + "description": "Authorization Code" + }, + "rcode": { + "type": "string", + "example": "1", + "description": "Authorization RCode" + } + }, + "description": "Authorization Info Values" + } + }, + "feeAndFundingDetails": { + "type": "array", + "description": "List of Fee Funding Info values", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "maxLength": 26, + "example": "12345678901234567890123456", + "description": "An unique identification number assigned by CyberSource to identify the submitted request." + }, + "interchangePerItemFee": { + "type": "string", + "example": "2.7", + "description": "interchange Per Item Fee" + }, + "interchangeDescription": { + "type": "string", + "example": "Visa International Assessments (Enhanced)", + "description": "interchange Description" + }, + "interchangePercentage": { + "type": "string", + "example": "0.25", + "description": "interchange Percentage" + }, + "interchangePercentageAmount": { + "type": "string", + "example": "-3.7500", + "description": "interchange Percentage Amount" + }, + "discountPercentage": { + "type": "string", + "example": "2.39", + "description": "Discount Percentage" + }, + "discountAmount": { + "type": "string", + "example": "0.429", + "description": "Discount Amount" + }, + "discountPerItemFee": { + "type": "string", + "example": "0.002", + "description": "Discount Per Item Fee" + }, + "totalFee": { + "type": "string", + "example": "0.429", + "description": "Total Fee" + }, + "feeCurrency": { + "type": "string", + "example": "1", + "description": "Fee Currency" + }, + "duesAssessments": { + "type": "string", + "example": "0", + "description": "Dues Assessments" + }, + "fundingAmount": { + "type": "string", + "example": "2.50", + "description": "Funding Amount" + }, + "fundingCurrency": { + "type": "string", + "example": "USD", + "description": "Funding Currency (ISO 4217)" + } + }, + "description": "Fee Funding Section" + } + }, + "others": { + "type": "array", + "description": "List of Other Info values", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "maxLength": 26, + "example": "12345678901234567890123456", + "description": "An unique identification number assigned by CyberSource to identify the submitted request." + }, + "merchantData1": { + "type": "string", + "example": "Merchant Defined Data", + "description": "Merchant Defined Data" + }, + "merchantData2": { + "type": "string", + "example": "Merchant Defined Data", + "description": "Merchant Defined Data" + }, + "merchantData3": { + "type": "string", + "example": "Merchant Defined Data", + "description": "Merchant Defined Data" + }, + "merchantData4": { + "type": "string", + "example": "Merchant Defined Data", + "description": "Merchant Defined Data" + }, + "firstName": { + "type": "string", + "example": "First Name", + "description": "First Name" + }, + "lastName": { + "type": "string", + "example": "Last Name", + "description": "Last Name" + } + }, + "description": "Other Merchant Details Values." + } + }, + "settlementStatuses": { + "type": "array", + "description": "List of Settlement Status Info values", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "maxLength": 26, + "example": "12345678901234567890123456", + "description": "An unique identification number assigned by CyberSource to identify the submitted request." + }, + "status": { + "type": "string", + "example": "Settlement Status", + "description": "Settlement Status" + }, + "settlementTime": { + "type": "string", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "description": "Settlement Date" + }, + "reasonCode": { + "example": "reasonCode", + "type": "string", + "description": "ReasonCode" + }, + "errorText": { + "example": "errorText", + "type": "string", + "description": "errorText" + } + }, + "description": "Settlement Status Section Values." + } + } + }, + "type": "object" + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3PurchaseRefundDetailsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "title": "reportingV3PurchaseRefundDetailsGet401Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Report not found", + "schema": { + "title": "reportingV3PurchaseRefundDetailsGet404Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "500": { + "description": "Internal Server Error", + "schema": { + "title": "reportingV3PurchaseRefundDetailsGet500Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + }, + "examples": { + "application/json": { + "code": "SERVER_ERROR", + "correlationId": null, + "detail": "Internal Server Error. Please contact the customer support.", + "localizationKey": "cybsapi.server.error", + "message": "Error encountered while processing request" + } + } + } + } + } + }, + "/reporting/v3/payment-batch-summaries": { + "get": { + "tags": [ + "Payment Batch Summaries" + ], + "summary": "Get Payment Batch Summary Data", + "description": "Scope can be either account/merchant or reseller.", + "operationId": "getPaymentBatchSummary", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "text/csv", + "application/xml", + "application/hal+json" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-05-01T12:00:00Z", + "endTime": "2019-08-30T12:00:00Z" + }, + "produces": [ + "application/hal+json", + "text/csv", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "rollUp", + "in": "query", + "description": "Conditional - RollUp for data for day/week/month. Required while getting breakdown data for a Merchant", + "required": false, + "type": "string" + }, + { + "name": "breakdown", + "in": "query", + "description": "Conditional - Breakdown on account_rollup/all_merchant/selected_merchant. Required while getting breakdown data for a Merchant.", + "required": false, + "type": "string" + }, + { + "name": "startDayOfWeek", + "in": "query", + "description": "Optional - Start day of week to breakdown data for weeks in a month", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 7 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3PaymentBatchSummariesGet200Response", + "type": "object", + "properties": { + "startTime": { + "type": "string", + "format": "date-time" + }, + "endTime": { + "type": "string", + "format": "date-time" + }, + "paymentBatchSummaries": { + "type": "array", + "items": { + "type": "object", + "properties": { + "currencyCode": { + "type": "string", + "example": "USD" + }, + "paymentSubTypeDescription": { + "type": "string", + "example": "Diners Club" + }, + "startTime": { + "type": "string", + "format": "date-time" + }, + "endTime": { + "type": "string", + "format": "date-time" + }, + "salesCount": { + "type": "integer", + "example": 10, + "format": "int32" + }, + "salesAmount": { + "type": "string", + "example": "5000.01" + }, + "creditCount": { + "type": "integer", + "example": 10, + "format": "int32" + }, + "creditAmount": { + "type": "string", + "example": "5000.01" + }, + "accountName": { + "type": "string", + "example": "ubmerchant296" + }, + "accountId": { + "type": "string", + "example": "ubmerchant296_acct" + }, + "merchantId": { + "type": "string", + "example": "ubmerchant296_3" + }, + "merchantName": { + "type": "string", + "example": "ubmerchant296_3" + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3PaymentBatchSummariesGet200Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Payment Batch Summary not found" + } + } + } + }, + "/reporting/v3/conversion-details": { + "get": { + "tags": [ + "Conversion Details" + ], + "summary": "Get Conversion Detail Transactions", + "description": "Get conversion detail of transactions for a merchant.", + "operationId": "getConversionDetail", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "startTime": "2019-03-21T00:00:00Z", + "endTime": "2019-03-21T23:00:00Z", + "organizationId": "testrest" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "title": "reportingV3ConversionDetailsGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id", + "example": "testMerchantId", + "xml": { + "name": "MerchantID", + "attribute": true + } + }, + "startTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00", + "xml": { + "name": "ReportStartDate", + "attribute": true + } + }, + "endTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00", + "xml": { + "name": "ReportEndDate", + "attribute": true + } + }, + "conversionDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "merchantReferenceNumber": { + "type": "string", + "description": "Merchant reference number of a merchant", + "example": "1234567890", + "xml": { + "name": "MerchantReferenceNumber", + "attribute": true + } + }, + "conversionTime": { + "type": "string", + "format": "date-time", + "description": "Date of conversion", + "example": "2017-10-01T10:10:10+05:00", + "xml": { + "name": "ConversionDate", + "attribute": true + } + }, + "requestId": { + "type": "string", + "description": "Cybersource Transation request id", + "example": "1234567890123456789012", + "xml": { + "name": "RequestID", + "attribute": true + } + }, + "originalDecision": { + "type": "string", + "description": "Original decision", + "example": "REVIEW", + "xml": { + "name": "OriginalDecision" + } + }, + "newDecision": { + "type": "string", + "description": "New decision", + "example": "ACCEPT", + "xml": { + "name": "NewDecision" + } + }, + "reviewer": { + "type": "string", + "description": "User name of the reviewer", + "example": "testuserId", + "xml": { + "name": "Reviewer" + } + }, + "reviewerComments": { + "type": "string", + "description": "Comments of the reviewer", + "example": "Verified order.", + "xml": { + "name": "ReviewerComments" + } + }, + "queue": { + "type": "string", + "description": "Name of the queue", + "example": "Review Queue", + "xml": { + "name": "Queue" + } + }, + "profile": { + "type": "string", + "description": "Name of the profile", + "example": "Test Profile", + "xml": { + "name": "Profile" + } + }, + "notes": { + "type": "array", + "items": { + "type": "object", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "description": "Time of the note added by reviewer", + "example": "2017-10-01T10:10:10+05:00", + "xml": { + "name": "Date", + "attribute": true + } + }, + "addedBy": { + "type": "string", + "description": "Note added by reviewer", + "example": "testuserId", + "xml": { + "name": "AddedBy", + "attribute": true + } + }, + "comments": { + "type": "string", + "description": "Comments given by the reviewer", + "example": "Verified the order and accepted.", + "xml": { + "name": "Comment", + "attribute": true + } + } + }, + "xml": { + "name": "Note" + } + }, + "xml": { + "name": "Notes" + } + } + }, + "xml": { + "name": "Conversion" + } + } + } + }, + "xml": { + "name": "Report" + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3ConversionDetailsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "404": { + "description": "Conversion detail not found", + "schema": { + "title": "reportingV3ConversionDetailsGet404Response" + } + } + } + } + }, + "/reporting/v3/net-fundings": { + "get": { + "tags": [ + "Net Fundings" + ], + "summary": "Get Netfunding Information for an Account or a Merchant", + "description": "Get Netfunding information for an account or a merchant.", + "operationId": "getNetFundingDetails", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00Z", + "endTime": "2019-09-01T23:59:59Z" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "groupName", + "in": "query", + "description": "Valid CyberSource Group Name.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3NetFundingsGet200Response", + "type": "object", + "properties": { + "startTime": { + "type": "string", + "description": "Valid report Start Date in **ISO 8601 format**.\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example:**\n- yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "attribute": true + } + }, + "endTime": { + "type": "string", + "description": "Valid report End Date in **ISO 8601 format**\n**Example date format:**\n- yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", + "example": "2018-04-12T23:20:50.52Z", + "format": "date-time", + "xml": { + "attribute": true + } + }, + "netFundingSummaries": { + "type": "array", + "description": "List of Netfunding summary objects", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Valid values:\n- PURCHASES\n- REFUNDS\n- FEES\n- CHARGEBACKS\n", + "example": "PURCHASES" + }, + "paymentSubType": { + "type": "string", + "example": "VI" + }, + "conveyedCount": { + "type": "integer", + "example": 10 + }, + "conveyedAmount": { + "type": "string", + "example": "100.50" + }, + "settledCount": { + "type": "integer", + "example": 10 + }, + "fundedCount": { + "type": "integer", + "example": 10 + }, + "fundedAmount": { + "type": "string", + "example": "150.50" + }, + "currencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + } + }, + "xml": { + "name": "NetFundingSummary" + } + }, + "xml": { + "name": "NetFundingSummaries", + "wrapped": true + } + }, + "totalPurchases": { + "type": "array", + "description": "List of total purchases currency wise", + "items": { + "type": "object", + "required": [ + "currency", + "value" + ], + "properties": { + "currency": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "value": { + "type": "string", + "example": "10.01" + } + }, + "xml": { + "name": "Amount" + } + }, + "xml": { + "name": "totalPurchases", + "wrapped": true + } + }, + "totalRefunds": { + "type": "array", + "description": "List of total refunds currency wise", + "items": { + "type": "object", + "required": [ + "currency", + "value" + ], + "properties": { + "currency": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "value": { + "type": "string", + "example": "10.01" + } + }, + "xml": { + "name": "Amount" + } + }, + "xml": { + "name": "totalRefunds", + "wrapped": true + } + }, + "totalFees": { + "type": "array", + "description": "List of total fees currency wise", + "items": { + "type": "object", + "required": [ + "currency", + "value" + ], + "properties": { + "currency": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "value": { + "type": "string", + "example": "10.01" + } + }, + "xml": { + "name": "Amount" + } + }, + "xml": { + "name": "totalFees", + "wrapped": true + } + }, + "totalChargebacks": { + "type": "array", + "description": "List of total chargebacks currency wise", + "items": { + "type": "object", + "required": [ + "currency", + "value" + ], + "properties": { + "currency": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "value": { + "type": "string", + "example": "10.01" + } + }, + "xml": { + "name": "Amount" + } + }, + "xml": { + "name": "totalChargebacks", + "wrapped": true + } + }, + "netTotal": { + "type": "array", + "description": "List of new total currency wise", + "items": { + "type": "object", + "required": [ + "currency", + "value" + ], + "properties": { + "currency": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "value": { + "type": "string", + "example": "10.01" + } + }, + "xml": { + "name": "Amount" + } + }, + "xml": { + "name": "netTotal", + "wrapped": true + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "reportingV3NetFundingsGet400Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + } + }, + "401": { + "description": "Unauthorized", + "schema": { + "title": "reportingV3NetFundingsGet401Response" + } + }, + "403": { + "description": "Forbidden", + "schema": { + "title": "reportingV3NetFundingsGet403Response" + } + }, + "404": { + "description": "Report not found", + "schema": { + "title": "reportingV3NetFundingsGet404Response" + } + }, + "500": { + "description": "Internal Server Error", + "schema": { + "title": "reportingV3NetFundingsGet500Response", + "type": "object", + "required": [ + "submitTimeUtc", + "reason", + "message", + "details" + ], + "properties": { + "submitTimeUtc": { + "type": "string", + "format": "date-time", + "description": "Time of request in UTC. \n", + "example": "2016-08-11T22:47:57Z" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n", + "example": "INVALID_DATA" + }, + "message": { + "type": "string", + "description": "Short descriptive message to the user.\n", + "example": "One or more fields contains invalid data" + }, + "details": { + "type": "array", + "description": "Error field list\n", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "Field in request that caused an error\n" + }, + "reason": { + "type": "string", + "description": "Documented reason code\n" + } + }, + "description": "Provides failed validation input field detail\n" + } + } + }, + "description": "HTTP status code for client application" + }, + "examples": { + "application/json": { + "code": "SERVER_ERROR", + "correlationId": null, + "detail": null, + "fields": [], + "localizationKey": "cybsapi.server.error", + "message": "Error encountered while processing request" + } + } + } + } + } + }, + "/reporting/v3/dtds/{reportDefinitionNameVersion}": { + "get": { + "tags": [ + "Download DTD" + ], + "summary": "Download DTD for Report", + "description": "Used to download DTDs for reports on no-auth.", + "operationId": "getDTDV2", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "isClientSideApi": true + }, + "produces": [ + "application/xml-dtd" + ], + "parameters": [ + { + "name": "reportDefinitionNameVersion", + "in": "path", + "description": "Name and version of DTD file to download. Some DTDs only have one version. In that case version name is not needed. Some example values are ctdr-1.0, tdr, pbdr-1.1", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Ok" + }, + "400": { + "description": "Bad request. DTD file name may be invalid" + }, + "404": { + "description": "DTD file not found" + }, + "500": { + "description": "Internal Server Error" + } + } + } + }, + "/reporting/v3/xsds/{reportDefinitionNameVersion}": { + "get": { + "tags": [ + "Download XSD" + ], + "summary": "Download XSD for Report", + "description": "Used to download XSDs for reports on no-auth.", + "operationId": "getXSDV2", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "isClientSideApi": true + }, + "produces": [ + "text/xml" + ], + "parameters": [ + { + "name": "reportDefinitionNameVersion", + "in": "path", + "description": "Name and version of XSD file to download. Some XSDs only have one version. In that case version name is not needed. Some example values are DecisionManagerDetailReport, DecisionManagerTypes", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Ok" + }, + "400": { + "description": "Bad request. XSD file name may be invalid" + }, + "404": { + "description": "XSD file not found" + }, + "500": { + "description": "Internal Server Error" + } + } + } + }, + "/reporting/v3/chargeback-summaries": { + "get": { + "tags": [ + "Chargeback Summaries" + ], + "summary": "Get Chargeback Summaries", + "description": "Chargeback Summary Report Description", + "operationId": "getChargebackSummaries", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "accessLevel": "code", + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00Z", + "endTime": "2019-09-01T23:59:59Z" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3ChargebackSummariesGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Organization Id", + "example": "testrest", + "xml": { + "name": "MerchantId", + "attribute": true + } + }, + "startTime": { + "type": "string", + "description": "Report Start Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "name": "ReportStartDate", + "attribute": true + } + }, + "endTime": { + "type": "string", + "description": "Report Start Date", + "example": "2017-10-01T10:10:10+05:00", + "xml": { + "name": "ReportEndDate", + "attribute": true + } + }, + "chargebackSummaries": { + "type": "array", + "description": "List of Summary values", + "items": { + "type": "object", + "properties": { + "count": { + "type": "number", + "description": "Chargeback summary list count", + "example": "8" + }, + "time": { + "type": "string", + "description": "Summary Date", + "example": "2018-01-04T11:33:06.000-0800", + "format": "date-time" + }, + "accountId": { + "type": "string", + "description": "Account Id", + "example": "testrest_acct" + } + }, + "xml": { + "name": "Request", + "wrapped": true + } + } + } + }, + "xml": { + "name": "Report", + "wrapped": true + } + } + } + } + } + }, + "/reporting/v3/chargeback-details": { + "get": { + "tags": [ + "Chargeback Details" + ], + "summary": "Get Chargeback Details", + "description": "Chargeback Detail Report Description", + "operationId": "getChargebackDetails", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "accessLevel": "code", + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00Z", + "endTime": "2019-09-01T23:59:59Z" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3ChargebackDetailsGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Organization Id", + "example": "testrest", + "xml": { + "name": "MerchantId", + "attribute": true + } + }, + "startTime": { + "type": "string", + "description": "Report Start Date (ISO 8601 Extended)", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "name": "ReportStartDate", + "attribute": true + } + }, + "endTime": { + "type": "string", + "description": "Report Start Date (ISO 8601 Extended)", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "name": "ReportEndDate", + "attribute": true + } + }, + "chargebackDetails": { + "type": "array", + "description": "List of Chargeback Details list.", + "items": { + "type": "object", + "properties": { + "processorMerchantId": { + "type": "string", + "description": "Processor Merchant Id", + "example": "174263416896" + }, + "merchantName": { + "type": "string", + "description": "Merchant Name", + "example": "Revolutionary Entertainment Inc" + }, + "transactionReferenceNumber": { + "type": "string", + "description": "Transaction Reference Number", + "example": "93983883073" + }, + "merchantReferenceNumber": { + "type": "string", + "description": "Merchant Reference Number", + "example": "X03434388DEADBEEF" + }, + "natureOfDispute": { + "type": "string", + "description": "Nature of Dispute", + "example": "Chargeback" + }, + "alertType": { + "type": "string", + "description": "Chargeback Alert Type", + "example": "2" + }, + "amount": { + "type": "string", + "description": "Chargeback Amount", + "example": "5" + }, + "sign": { + "type": "string", + "description": "Chargeback Sign", + "example": "C" + }, + "action": { + "type": "string", + "description": "Chargeback Action", + "example": "3" + }, + "cardType": { + "type": "string", + "description": "Card Type", + "example": "American Express" + }, + "originalSettlementTime": { + "type": "string", + "description": "Original Settlement Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "trackingNumber": { + "type": "string", + "description": "Tracking Number", + "example": "990175" + }, + "currencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "requestId": { + "type": "string", + "description": "Request Id", + "example": "5060113732046412501541" + }, + "responseDueTime": { + "type": "string", + "description": "Response Due Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "time": { + "type": "string", + "description": "Chargeback Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "actionDescription": { + "type": "string", + "description": "Chargeback Action Description", + "example": "Financial transaction" + }, + "customerId": { + "type": "string", + "description": "Customer Id", + "example": "937999JFK" + }, + "reasonCode": { + "type": "string", + "description": "Chargeback Reason Code", + "example": "1050" + }, + "representmentCPTime": { + "type": "string", + "description": "Representment CP Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "applications": { + "type": "string", + "description": "ICS Request Applications", + "example": "ics_bill" + }, + "eventRequestedTime": { + "type": "string", + "description": "Event Request Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "preDisputeFlag": { + "type": "string", + "description": "Pre Dispute Flag", + "example": "N" + } + }, + "xml": { + "name": "Request", + "wrapped": true + } + } + } + }, + "xml": { + "name": "Report", + "wrapped": true + } + } + } + } + } + }, + "/reporting/v3/retrieval-summaries": { + "get": { + "tags": [ + "Retrieval Summaries" + ], + "summary": "Get Retrieval Summaries", + "description": "Retrieval Summary Report Description", + "operationId": "getRetrievalSummary", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "accessLevel": "code", + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00Z", + "endTime": "2019-09-01T23:59:59Z" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3RetrievalSummariesGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Organization Id", + "example": "testrest", + "xml": { + "name": "MerchantId", + "attribute": true + } + }, + "startTime": { + "type": "string", + "description": "Report Start Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "name": "ReportStartDate", + "attribute": true + } + }, + "endTime": { + "type": "string", + "description": "Report Start Date", + "example": "2017-10-01T10:10:10+05:00", + "xml": { + "name": "ReportEndDate", + "attribute": true + } + }, + "retrievalSummaries": { + "type": "array", + "description": "List of Summary values", + "items": { + "type": "object", + "properties": { + "count": { + "type": "number", + "description": "Chargeback summary list count", + "example": "8" + }, + "time": { + "type": "string", + "description": "Summary Date", + "example": "2018-01-04T11:33:06.000-0800", + "format": "date-time" + }, + "accountId": { + "type": "string", + "description": "Account Id", + "example": "testrest_acct" + } + }, + "xml": { + "name": "Request", + "wrapped": true + } + } + } + }, + "xml": { + "name": "Report", + "wrapped": true + } + } + } + } + } + }, + "/reporting/v3/retrieval-details": { + "get": { + "tags": [ + "Retrieval Details" + ], + "summary": "Get Retrieval Details", + "description": "Retrieval Detail Report Description", + "operationId": "getRetrievalDetails", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "accessLevel": "code", + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00Z", + "endTime": "2019-09-01T23:59:59Z" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3RetrievalDetailsGet200Response", + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "Organization Id", + "example": "testrest", + "xml": { + "name": "MerchantId", + "attribute": true + } + }, + "startTime": { + "type": "string", + "description": "Report Start Date (ISO 8601 Extended)", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "name": "ReportStartDate", + "attribute": true + } + }, + "endTime": { + "type": "string", + "description": "Report Start Date (ISO 8601 Extended)", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time", + "xml": { + "name": "ReportEndDate", + "attribute": true + } + }, + "retrievalDetails": { + "type": "array", + "description": "List of Retrieval Details list.", + "items": { + "type": "object", + "properties": { + "processorMerchantId": { + "type": "string", + "description": "Processor Merchant Id", + "example": "174263416896" + }, + "merchantName": { + "type": "string", + "description": "Merchant Name", + "example": "ZZZZZZ USA_EUR" + }, + "transactionReferenceNumber": { + "type": "string", + "description": "Transaction Reference Number", + "example": "02230413" + }, + "merchantReferenceNumber": { + "type": "string", + "description": "Merchant Reference Number", + "example": "123" + }, + "natureOfDispute": { + "type": "string", + "description": "Nature of Dispute", + "example": "Retrieval" + }, + "alertType": { + "type": "string", + "description": "Retrieval Alert Type", + "example": "2" + }, + "amount": { + "type": "string", + "description": "Retrieval Amount", + "example": "5" + }, + "sign": { + "type": "string", + "description": "Retrieval Sign", + "example": "C" + }, + "action": { + "type": "string", + "description": "Retrieval Action", + "example": "3" + }, + "cardType": { + "type": "string", + "description": "Card Type", + "example": "American Express" + }, + "originalSettlementTime": { + "type": "string", + "description": "Original Settlement Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "trackingNumber": { + "type": "string", + "description": "Tracking Number", + "example": "990175" + }, + "currencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "requestId": { + "type": "string", + "description": "Request Id", + "example": "5060113732046412501541" + }, + "responseDueTime": { + "type": "string", + "description": "Response Due Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "time": { + "type": "string", + "description": "Retrieval Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "actionDescription": { + "type": "string", + "description": "Retrieval Action Description", + "example": "Financial transaction" + }, + "customerId": { + "type": "string", + "description": "Customer Id", + "example": "Customer Id" + }, + "reasonCode": { + "type": "string", + "description": "Retrieval Reason Code", + "example": "1050" + }, + "representmentCPTime": { + "type": "string", + "description": "Representment CP Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "applications": { + "type": "string", + "description": "ICS Request Applications", + "example": "ics_auth" + }, + "eventRequestedTime": { + "type": "string", + "description": "Event Request Date", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + } + }, + "xml": { + "name": "Request", + "wrapped": true + } + } + } + }, + "xml": { + "name": "Report", + "wrapped": true + } + } + } + } + } + }, + "/reporting/v3/interchange-clearing-level-details": { + "get": { + "tags": [ + "Interchange Clearing Level Details" + ], + "summary": "Interchange Clearing Level data for an account or a merchant", + "description": "Interchange Clearing Level data for an account or a merchant", + "operationId": "getInterchangeClearingLevelDetails", + "x-devcenter-metaData": { + "categoryTag": "Reporting", + "enableDownload": true, + "accessLevel": "code", + "x-custom-headers": { + "accept": [ + "application/hal+json", + "application/xml" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startTime": "2019-08-01T00:00:00Z", + "endTime": "2019-09-01T23:59:59Z" + }, + "produces": [ + "application/hal+json", + "application/xml" + ], + "parameters": [ + { + "name": "startTime", + "in": "query", + "description": "Valid report Start Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "endTime", + "in": "query", + "description": "Valid report End Time in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n**Example date format:**\n - yyyy-MM-dd'T'HH:mm:ss.SSSZ (e.g. 2018-01-01T00:00:00.000Z)\n", + "required": true, + "type": "string", + "format": "date-time" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "reportingV3InterchangeClearingLevelDetailsGet200Response", + "type": "object", + "properties": { + "startDate": { + "type": "string", + "description": "Valid report Start Date in **ISO 8601 format**.\nPlease refer the following link to know more about ISO 8601 format.\n- https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14\n\n**Example:**\n- yyyy-MM-dd'T'HH:mm:ss.SSSZZ\n", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "Valid report Start Date in **ISO 8601 format**.\n", + "example": "2017-10-01T10:10:10+05:00", + "format": "date-time" + }, + "interchangeClearingLevelDetails": { + "type": "array", + "description": "List of InterchangeClearingLevelDetail", + "items": { + "type": "object", + "properties": { + "requestId": { + "type": "string", + "example": "5166566062346232701541" + }, + "organizationId": { + "type": "string", + "example": "testrest" + }, + "accountId": { + "type": "string", + "example": "testrest_acct" + }, + "processorMerchantId": { + "type": "string", + "example": "174180221999" + }, + "transactionReferenceNumber": { + "type": "string", + "example": "21339480" + }, + "merchantReferenceNumber": { + "type": "string", + "example": "33557799" + }, + "accountSuffix": { + "type": "string", + "example": "2393" + }, + "paymentSubType": { + "type": "string", + "example": "VI" + }, + "paymentSubTypeDescription": { + "type": "string", + "example": "Visa" + }, + "transactionTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "processedTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "transactionType": { + "type": "string", + "example": "Sale" + }, + "amount": { + "type": "string", + "example": "90.50" + }, + "currencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "priceType": { + "type": "string", + "example": "077" + }, + "priceAmountOne": { + "type": "string", + "example": "0.018" + }, + "priceAmountTwo": { + "type": "string", + "example": "0.1" + }, + "reClass": { + "type": "string", + "example": "0" + }, + "settlementTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "settlementProcessor": { + "type": "string", + "example": "fdiglobal" + }, + "merchantBatchNumber": { + "type": "string", + "example": "000000037800" + }, + "clearedLevel": { + "type": "string", + "example": "REG" + }, + "billbackReasonCode": { + "type": "string", + "example": "VI" + }, + "billbackReasonDescription": { + "type": "string", + "example": "B278-TRANSACTION CLEARED AS REGULATED" + }, + "merchantPricedLevel": { + "type": "string", + "example": "1.72" + }, + "discountRate": { + "type": "string", + "example": "0.0" + }, + "discountAmount": { + "type": "string", + "example": "0.0" + }, + "clearingRateAmountOne": { + "type": "string", + "example": "0.005" + }, + "clearingRateAmountTwo": { + "type": "string", + "example": "0.22" + }, + "clearingRateAmountThree": { + "type": "string", + "example": "0.0" + }, + "clearingRateCurrencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "interchangeAmount": { + "type": "string", + "example": "0.27" + }, + "billbackAmount": { + "type": "string", + "example": "-1.46" + }, + "settlementAmount": { + "type": "string", + "example": "1.23" + }, + "settlementCurrencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "conversionRate": { + "type": "string", + "example": "1.0" + }, + "deltaCost": { + "type": "string", + "example": "5.0" + }, + "surchargeAmount": { + "type": "string", + "example": "5.0" + }, + "percentRateCharged": { + "type": "string", + "example": "5.5" + }, + "perTransactionCharged": { + "type": "string", + "example": "5.0" + }, + "downgradeReasonCode": { + "type": "string", + "example": "1" + }, + "processTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "authCode": { + "type": "string", + "example": "012628" + }, + "batchTime": { + "type": "string", + "format": "date-time", + "example": "2017-10-01T10:10:10+05:00" + }, + "processorBatchNumber": { + "type": "string", + "example": "00001" + }, + "cardIndicator": { + "type": "string", + "example": "P" + }, + "minimumUnit": { + "type": "integer", + "example": 1 + }, + "minimumUnitCurrencyCode": { + "type": "string", + "description": "Valid ISO 4217 ALPHA-3 currency code", + "example": "USD" + }, + "creditDeltaIndicator": { + "type": "string", + "example": "N" + }, + "feeCategory": { + "type": "string", + "example": "A" + }, + "applicationName": { + "type": "string", + "example": "ics_auth" + } + }, + "xml": { + "name": "Request" + } + } + } + }, + "xml": { + "name": "Report" + } + } + } + } + } + }, + "/sfs/v1/file-details": { + "get": { + "tags": [ + "SecureFileShare" + ], + "summary": "Get List of Files", + "description": "Get list of files and it's information of them available inside the report directory", + "operationId": "getFileDetail", + "x-devcenter-metaData": { + "categoryTag": "Secure_File_Share", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-secure-file-share-api-102718/secure_file_share_api_intro.html" + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "startDate": "2019-10-20", + "endDate": "2020-01-01", + "name": "" + }, + "produces": [ + "application/hal+json" + ], + "consumes": [ + "*/*;charset=utf-8" + ], + "parameters": [ + { + "name": "startDate", + "in": "query", + "description": "Valid start date in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd\n", + "required": true, + "type": "string", + "format": "date" + }, + { + "name": "endDate", + "in": "query", + "description": "Valid end date in **ISO 8601 format**\nPlease refer the following link to know more about ISO 8601 format.[Rfc Date Format](https://xml2rfc.tools.ietf.org/public/rfc/html/rfc3339.html#anchor14)\n\n **Example date format:**\n - yyyy-MM-dd\n", + "required": true, + "type": "string", + "format": "date" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Cybersource Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + }, + { + "name": "name", + "in": "query", + "description": "**Tailored to searches for specific files with in given Date range**\nexample : MyTransactionDetailreport.xml\n", + "pattern": "[a-zA-Z0-9-_\\.]+", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Ok", + "schema": { + "title": "V1FileDetailsGet200Response", + "type": "object", + "properties": { + "fileDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "fileId": { + "type": "string", + "description": "Unique identifier of a file", + "example": "AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" + }, + "name": { + "type": "string", + "description": "Name of the file", + "example": "MyTransactionDetailreport.xml" + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "Date and time for the file in PST", + "example": "2017-10-01T00:00:00+05:00" + }, + "lastModifiedTime": { + "type": "string", + "format": "date-time", + "description": "Date and time for the file in PST", + "example": "2017-10-01T00:00:00+05:00" + }, + "date": { + "type": "string", + "format": "date", + "description": "Date and time for the file in PST", + "example": "2017-10-05" + }, + "mimeType": { + "type": "string", + "description": "'File extension'\n\nValid values:\n- 'application/xml'\n- 'text/csv'\n- 'application/pdf'\n- 'application/octet-stream'\n", + "example": "application/xml" + }, + "size": { + "type": "number", + "description": "Size of the file in bytes", + "example": 2245397 + } + } + } + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "example": "/sfs/v1/file-details?startDate=2018-01-01&endDate=2018-01-02" + }, + "method": { + "type": "string", + "example": "GET" + } + } + }, + "files": { + "type": "array", + "items": { + "type": "object", + "properties": { + "fileId": { + "type": "string", + "description": "Unique identifier for each file", + "example": "AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" + }, + "href": { + "type": "string", + "example": "/sfs/v1/files/AC855F9F42C90361EC78202F47CDE98D70BEAA6FB00FB56AE83EE9A9DAEE077B" + }, + "method": { + "type": "string", + "example": "GET" + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request", + "schema": { + "title": "V1FilesGet400Response", + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + }, + "examples": { + "application/json": { + "code": "VALIDATION_ERROR", + "correlationId": null, + "detail": null, + "fields": [ + { + "path": "startTime", + "message": "Start date should not precede 18 months from current time in GMT", + "localizationKey": null + } + ], + "localizationKey": "cybsapi.validation.errors", + "message": "Field validation errors" + } + } + }, + "401": { + "description": "Ok", + "schema": { + "title": "V1FileDetailsGet401Response", + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + }, + "examples": { + "application/json": { + "code": "VALIDATION_ERROR", + "correlationId": null, + "detail": null, + "fields": [ + { + "path": "organizationId", + "message": "Organization doesn't has access to File details", + "localizationKey": null + } + ], + "localizationKey": "cybsapi.validation.errors", + "message": "Field validation errors" + } + } + }, + "404": { + "description": "Files Info not found", + "schema": { + "title": "V1FileDetailsGet404Response", + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + }, + "examples": { + "application/json": { + "code": "RESOURCE_NOTFOUND", + "correlationId": null, + "detail": "The requested resource is not found. Please try again later.", + "localizationKey": "cybsapi.resource.notfound", + "message": "Files Info not found for requested input values" + } + } + }, + "500": { + "description": "Internal Server Error", + "schema": { + "title": "V1FileDetailsGet500Response", + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + }, + "examples": { + "application/json": { + "code": "SERVER_ERROR", + "correlationId": null, + "detail": "Internal Server Error. Please contact the customer support.", + "localizationKey": "cybsapi.server.error", + "message": "Error encountered while processing request" + } + } + } + } + } + }, + "/sfs/v1/files/{fileId}": { + "get": { + "tags": [ + "SecureFileShare" + ], + "summary": "Download a File with File Identifier", + "description": "Download a file for the given file identifier", + "operationId": "getFile", + "x-streaming": true, + "x-devcenter-metaData": { + "categoryTag": "Secure_File_Share", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-secure-file-share-api-102718/secure_file_share_api_intro.html", + "enableDownload": true, + "x-custom-headers": { + "accept": [ + "text/csv", + "application/xml", + "application/pdf" + ] + } + }, + "x-queryParameterDefaults": { + "organizationId": "testrest" + }, + "x-depends": { + "example": { + "path": "/sfs/v1/file-details", + "verb": "get", + "exampleId": "Get list of files" + }, + "fieldMapping": [ + { + "sourceField": "fileDetails[0].fileId", + "destinationField": "fileId", + "fieldTypeInDestination": "path" + } + ] + }, + "produces": [ + "application/xml", + "text/csv", + "application/pdf" + ], + "consumes": [ + "*/*;charset=utf-8" + ], + "parameters": [ + { + "name": "fileId", + "in": "path", + "description": "Unique identifier for each file", + "required": true, + "type": "string" + }, + { + "name": "organizationId", + "in": "query", + "description": "Valid Cybersource Organization Id", + "pattern": "[a-zA-Z0-9-_]+", + "required": false, + "type": "string", + "minLength": 1, + "maxLength": 32 + } + ], + "responses": { + "200": { + "description": "OK" + }, + "400": { + "description": "Invalid Request", + "schema": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + }, + "localizationKey": { + "type": "string", + "description": "Localization Key Name" + }, + "correlationId": { + "type": "string", + "description": "Correlation Id" + }, + "detail": { + "type": "string", + "description": "Error Detail" + }, + "fields": { + "type": "array", + "description": "Error fields List", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "Path of the failed property" + }, + "message": { + "type": "string", + "description": "Error description about validation failed field" + }, + "localizationKey": { + "type": "string", + "description": "Localized Key Name" + } + }, + "description": "Provide validation failed input field details" + } + } + }, + "description": "Error Bean" + } + }, + "404": { + "description": "No Reports Found" + } + } + } + }, + "/invoicing/v2/invoices": { + "post": { + "tags": [ + "invoices" + ], + "summary": "Create a New Invoice", + "description": "Create a new invoice.", + "operationId": "createInvoice", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "createInvoiceRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "sendImmediately": { + "type": "boolean", + "description": "If set to `true`, we send the invoice immediately. If set to `false`, the invoice remains in draft mode." + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice, such as the amount and line item details.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + } + }, + "example": { + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "sendImmediately": true, + "allowPartialPayments": true, + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "unitPrice": "120.08", + "quantity": "21" + } + ] + } + } + } + } + ], + "responses": { + "201": { + "description": "Created.", + "schema": { + "title": "invoicingV2InvoicesPost201Response", + "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." + } + } + }, + "update": { + "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." + } + } + }, + "deliver": { + "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." + } + } + }, + "cancel": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "paymentLink": { + "type": "string", + "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/rest/v2/invoices/98753", + "method": "GET" + }, + "update": { + "href": "/rest/v2/invoices/98753", + "method": "PUT" + }, + "send": { + "href": "/rest/v2/invoices/98753/delivery", + "method": "POST" + }, + "cancel": { + "href": "/rest/v2/invoices/98753/cancelation", + "method": "POST" + } + }, + "id": "98753", + "submitTimeUtc": "2019-06-28T19:48:06Z", + "status": "SENT", + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "98753", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "allowPartialPayments": true, + "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "balanceAmount": "2623.64", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "quantity": "21", + "unitPrice": "120.08" + } + ] + } + } + } + }, + "202": { + "description": "Invoice created but failed to send an email. Send the invoice separately.", + "schema": { + "title": "invoicingV2InvoicesPost202Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n- ACCEPTED\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": { + "submitTimeUtc": "2019-06-28T20:21:48Z", + "status": "ACCEPTED", + "reason": "ACCEPTED", + "message": "Invoice ID 98753 created but failed to send an email. Send the invoice separately." + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "invoicingV2InvoicesPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "404": { + "description": "The specified resource is not found.", + "schema": { + "title": "invoicingV2InvoicesPost404Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { + "submitTimeUtc": "2019-07-01T21:36:29Z", + "status": "NOTFOUND", + "reason": "NOT_FOUND", + "message": "Invoice does not exist." + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoicesPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + }, + "x-example": { + "example0": { + "summary": "Create a draft invoice", + "value": { + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "sendImmediately": false, + "allowPartialPayments": true, + "deliveryMode": "none" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.00", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "unitPrice": "120.08", + "quantity": "21" + } + ] + } + } + }, + "example1": { + "summary": "Create and send the invoice immediately", + "value": { + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "sendImmediately": true, + "allowPartialPayments": true, + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "unitPrice": "120.08", + "quantity": "21" + } + ] + } + } + }, + "example2": { + "summary": "Create an invoice and assign it a specific invoice number", + "value": { + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "A123", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "sendImmediately": true, + "allowPartialPayments": true, + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "unitPrice": "120.08", + "quantity": "21" + } + ] + } + } + }, + "example3": { + "summary": "Create an invoice without sending it", + "value": { + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "A123", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "sendImmediately": true, + "allowPartialPayments": true, + "deliveryMode": "none" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "unitPrice": "120.08", + "quantity": "21" + } + ] + } + } + } + } + }, + "get": { + "tags": [ + "invoices" + ], + "summary": "Get a List of Invoices", + "description": "Get a list of invoices.", + "operationId": "getAllInvoices", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "offset", + "in": "query", + "type": "integer", + "required": true, + "description": "Page offset number." + }, + { + "name": "limit", + "in": "query", + "type": "integer", + "required": true, + "description": "Maximum number of items you would like returned." + }, + { + "name": "status", + "in": "query", + "type": "string", + "required": false, + "description": "The status of the invoice.\n\nPossible values:\n - DRAFT\n - CREATED\n - SENT\n - PARTIAL\n - PAID\n - CANCELED\n" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoicesAllGet200Response", + "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." + } + } + }, + "next": { + "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." + } + } + }, + "previous": { + "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." + } + } + } + } + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "totalInvoices": { + "type": "integer" + }, + "invoices": { + "type": "array", + "items": { + "type": "object", + "description": "A list of invoices.", + "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." + } + } + }, + "update": { + "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." + } + } + }, + "deliver": { + "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." + } + } + }, + "cancel": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "customerInformation": { + "type": "object", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "properties": { + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields for a list of invoices.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/v2/invoices/?offset=1&limit=2&status=draft", + "method": "GET" + }, + "next": { + "href": "/v2/invoices/?offset=3&limit=2&status=draft", + "method": "GET" + }, + "previous": { + "href": "/v2/invoices/?offset=0&limit=2&status=draft", + "method": "GET" + } + }, + "submitTimeUtc": "2019-07-03T19:22:26Z", + "totalInvoices": 123, + "invoices": [ + { + "_links": { + "self": { + "href": "/v2/invoices/98772", + "method": "GET" + } + }, + "_supportedActions": [ + { + "href": "/v2/invoices/98772/delivery", + "method": "POST" + }, + { + "href": "/v2/invoices/98772", + "method": "PUT" + }, + { + "href": "/v2/invoices/98772/cancelation", + "method": "POST" + } + ], + "id": "98772", + "status": "DRAFT", + "customerInformation": { + "name": "Tanya Lee", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "dueDate": "2019-07-11" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "14249.56", + "currency": "USD" + } + } + }, + { + "_links": { + "self": { + "href": "/v2/invoices/98771", + "method": "GET" + } + }, + "_supportedActions": [ + { + "href": "/v2/invoices/98771/delivery", + "method": "POST" + }, + { + "href": "/v2/invoices/98771", + "method": "PUT" + }, + { + "href": "/v2/invoices/98771/cancelation", + "method": "POST" + } + ], + "id": "98771", + "status": "DRAFT", + "customerInformation": { + "name": "Tanya Lee", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "dueDate": "2019-07-11" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "14249.56", + "currency": "USD" + } + } + } + ] + } + } + }, + "400": { + "description": "Invalid invoice status. The status should be one of: `DRAFT`, `CREATED`, `SENT`, `PARTIAL`, `PAID`, or `CANCELED`.", + "schema": { + "title": "invoicingV2InvoicesAllGet400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "404": { + "description": "No invoices found.", + "schema": { + "title": "invoicingV2InvoicesAllGet404Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { + "submitTimeUtc": "2019-07-01T21:36:29Z", + "status": "NOTFOUND", + "reason": "NOT_FOUND", + "message": "Invoice does not exist." + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoicesAllGet502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + } + } + }, + "/invoicing/v2/invoices/{id}": { + "get": { + "tags": [ + "invoices" + ], + "summary": "Get Invoice Details", + "description": "Get the details of a specific invoice.", + "operationId": "getInvoice", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "type": "string", + "description": "The invoice number.", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoicesGet200Response", + "example": { + "_links": { + "self": { + "href": "/rest/v2/invoices/A123", + "method": "GET" + } + }, + "supportedActions": [ + { + "href": "/rest/v2/invoices/A123/delivery", + "method": "POST" + }, + { + "href": "/rest/v2/invoices/A123", + "method": "PUT" + }, + { + "href": "/rest/v2/invoices/A123/cancelation", + "method": "POST" + } + ], + "id": "A123", + "submitTimeUtc": "2019-07-01T22:37:14Z", + "status": "SENT", + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "A123", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "allowPartialPayments": false, + "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "11955.45", + "currency": "USD", + "balanceAmount": "11843.71", + "discountAmount": "1402.60", + "discountPercent": "10.5", + "subAmount": "13358.05", + "minimumPartialAmount": "100.00", + "taxDetails": { + "type": "State Tax", + "amount": "1018.05", + "rate": "8.25" + }, + "freight": { + "amount": "40.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "quantity": "1000", + "unitPrice": "12.34" + } + ] + }, + "invoiceHistory": [ + { + "event": "PAYMENT", + "date": "2019-06-18T21:57:31.09Z", + "transactionDetails": { + "transactionId": "2155897958", + "amount": "111.74" + } + }, + { + "event": "RESEND", + "date": "2019-06-18T21:55:01.02Z" + }, + { + "event": "SEND", + "date": "2019-06-18T21:51:19.09Z" + }, + { + "event": "CREATE", + "date": "2019-06-18T21:51:18.76Z" + } + ] + }, + "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." + } + } + }, + "update": { + "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." + } + } + }, + "deliver": { + "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." + } + } + }, + "cancel": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "paymentLink": { + "type": "string", + "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + }, + "invoiceHistory": { + "type": "array", + "items": { + "type": "object", + "properties": { + "event": { + "type": "string", + "description": "The event triggered for the invoice.\n\nPossible values:\n - `CREATE`\n - `UPDATE`\n - `SEND`\n - `RESEND`\n - `REMINDER`\n - `PAYMENT`\n - `CANCEL`\n" + }, + "date": { + "type": "string", + "format": "date-time", + "description": "The date and time when the invoice event was triggered in ISO 8601 format. Format: YYYY-MM-DDThh:mm:ssZ\n" + }, + "transactionDetails": { + "description": "These details are only returned when the invoice event is `payment`.", + "type": "object", + "properties": { + "transactionId": { + "type": "string", + "description": "Payer auth Transaction identifier." + }, + "amount": { + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### DCC for First Data\nNot used.\n" + } + } + } + } + } + } + }, + "type": "object" + } + }, + "400": { + "description": "Invoicing service is not enabled.", + "schema": { + "title": "invoicingV2InvoicesGet400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "404": { + "description": "Invoice does not exist.", + "schema": { + "title": "invoicingV2InvoicesGet404Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { + "submitTimeUtc": "2019-07-01T21:36:29Z", + "status": "NOTFOUND", + "reason": "NOT_FOUND", + "message": "Invoice does not exist." + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoicesGet502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + } + }, + "put": { + "tags": [ + "invoices" + ], + "summary": "Update an Invoice", + "description": "Update an invoice.", + "operationId": "updateInvoice", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "type": "string", + "description": "The invoice number.", + "required": true + }, + { + "name": "updateInvoiceRequest", + "in": "body", + "description": "Updating the invoice does not resend the invoice automatically. You must resend the invoice separately.", + "required": true, + "schema": { + "type": "object", + "properties": { + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains the updatable invoice information.", + "properties": { + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice, such as the amount and line item details.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + } + }, + "example": { + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "allowPartialPayments": true, + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "unitPrice": "120.08", + "quantity": "21" + } + ] + } + } + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoicesPut200Response", + "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." + } + } + }, + "update": { + "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." + } + } + }, + "deliver": { + "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." + } + } + }, + "cancel": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "paymentLink": { + "type": "string", + "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/rest/v2/invoices/98753", + "method": "GET" + }, + "update": { + "href": "/rest/v2/invoices/98753", + "method": "PUT" + }, + "send": { + "href": "/rest/v2/invoices/98753/delivery", + "method": "POST" + }, + "cancel": { + "href": "/rest/v2/invoices/98753/cancelation", + "method": "POST" + } + }, + "id": "98753", + "submitTimeUtc": "2019-06-28T19:48:06Z", + "status": "SENT", + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "98753", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "allowPartialPayments": true, + "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "balanceAmount": "2623.64", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "quantity": "21", + "unitPrice": "120.08" + } + ] + } + } + } + }, + "400": { + "description": "Field validation errors.", + "schema": { + "title": "invoicingV2InvoicesPut400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "404": { + "description": "Invoice does not exist.", + "schema": { + "title": "invoicingV2InvoicesPut404Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { + "submitTimeUtc": "2019-07-01T21:36:29Z", + "status": "NOTFOUND", + "reason": "NOT_FOUND", + "message": "Invoice does not exist." + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoicesPut502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + } + } + }, + "/invoicing/v2/invoices/{id}/delivery": { + "post": { + "tags": [ + "invoices" + ], + "summary": "Send an Invoice", + "description": "Send an invoice.", + "operationId": "performSendAction", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "type": "string", + "description": "The invoice number.", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoicesSend200Response", + "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." + } + } + }, + "update": { + "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." + } + } + }, + "deliver": { + "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." + } + } + }, + "cancel": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "paymentLink": { + "type": "string", + "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/rest/v2/invoices/98753", + "method": "GET" + }, + "update": { + "href": "/rest/v2/invoices/98753", + "method": "PUT" + }, + "send": { + "href": "/rest/v2/invoices/98753/delivery", + "method": "POST" + }, + "cancel": { + "href": "/rest/v2/invoices/98753/cancelation", + "method": "POST" + } + }, + "id": "98753", + "submitTimeUtc": "2019-06-28T19:48:06Z", + "status": "SENT", + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "98753", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "allowPartialPayments": true, + "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "balanceAmount": "2623.64", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "quantity": "21", + "unitPrice": "120.08" + } + ] + } + } + } + }, + "400": { + "description": "Requested action is not allowed.", + "schema": { + "title": "invoicingV2InvoicesSend400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "404": { + "description": "Invoice does not exist.", + "schema": { + "title": "invoicingV2InvoicesSend404Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { + "submitTimeUtc": "2019-07-01T21:36:29Z", + "status": "NOTFOUND", + "reason": "NOT_FOUND", + "message": "Invoice does not exist." + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoicesSend502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + } + } + }, + "/invoicing/v2/invoices/{id}/cancelation": { + "post": { + "tags": [ + "invoices" + ], + "summary": "Cancel an Invoice", + "description": "Cancel an invoice.", + "operationId": "performCancelAction", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "id", + "in": "path", + "type": "string", + "description": "The invoice number.", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoicesCancel200Response", + "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." + } + } + }, + "update": { + "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." + } + } + }, + "deliver": { + "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." + } + } + }, + "cancel": { + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n- DRAFT\n- CREATED\n- SENT\n- PARTIAL\n- PAID\n- CANCELED\n" + }, + "customerInformation": { + "type": "object", + "description": "Contains all of the customer-related fields for the invoice.", + "properties": { + "name": { + "type": "string", + "maxLength": 100, + "description": "Payer name for the invoice." + }, + "email": { + "type": "string", + "maxLength": 255, + "description": "Customer's email address, including the full domain name.\n\n#### CyberSource through VisaNet\nCredit 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.\n\n**Important** It is your responsibility to determine whether a field is required for the transaction you are requesting.\n\nFor processor-specific information, see the `customer_email` request-level field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n\n#### Invoicing\nEmail 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.\n\n#### Chase Paymentech Solutions\nOptional field.\n\n#### Credit Mutuel-CIC\nOptional field.\n\n#### OmniPay Direct\nOptional field.\n\n#### SIX\nOptional field.\n\n#### TSYS Acquiring Solutions\nRequired when `processingInformation.billPaymentOptions.billPayment=true` and `pointOfSaleInformation.entryMode=keyed`.\n\n#### Worldpay VAP\nOptional field.\n\n#### All other processors\nNot used.\n" + }, + "merchantCustomerId": { + "type": "string", + "maxLength": 100, + "description": "Your identifier for the customer.\n\nWhen 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.\n\n#### Comercio Latino\nFor recurring payments in Mexico, the value is the customer\u2019s contract number.\nNote Before you request the authorization, you must inform the issuer of the customer contract numbers that will be used for recurring transactions.\n\n#### Worldpay VAP\nFor a follow-on credit with Worldpay VAP, CyberSource checks the following locations, in the order\ngiven, for a customer account ID value and uses the first value it finds:\n1. `customer_account_id` value in the follow-on credit request\n2. Customer account ID value that was used for the capture that is being credited\n3. Customer account ID value that was used for the original authorization\nIf a customer account ID value cannot be found in any of these locations, then no value is used.\n\nFor processor-specific information, see the `customer_account_id` field description in\n[Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)\n" + } + } + }, + "invoiceInformation": { + "type": "object", + "description": "Contains all of the invoice-specific fields, such as the invoice number and due date.", + "properties": { + "invoiceNumber": { + "type": "string", + "description": "Invoice Number." + }, + "description": { + "type": "string", + "maxLength": 2000, + "description": "The description included in the invoice." + }, + "dueDate": { + "type": "string", + "maxLength": 10, + "format": "date", + "description": "The invoice due date. This field is required for creating an invoice.\nFormat: `YYYY-MM-DD`, where `YYYY` = year, `MM` = month, and `DD` = day\n" + }, + "allowPartialPayments": { + "type": "boolean", + "description": "If set to `true`, the payer can make a partial invoice payment." + }, + "paymentLink": { + "type": "string", + "description": "Returns the payment link to an invoice when the invoice status is `SENT`, `CREATED`, `PARTIAL`, or `PAID`." + }, + "deliveryMode": { + "type": "string", + "description": "If set to `None`, the invoice is created, and its status is set to 'CREATED', but no email is sent. \n\nPossible values: \n - `None` \n - `Email` \n" + } + } + }, + "orderInformation": { + "type": "object", + "description": "Contains all of the order-related fields for the invoice.", + "properties": { + "amountDetails": { + "type": "object", + "description": "Contains all of the amount-related fields in the invoice.", + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "balanceAmount": { + "type": "string", + "maxLength": 12, + "description": "Remaining balance on the account.\n\nReturned by authorization service.\n\n#### PIN debit\nRemaining balance on the prepaid card.\n\nReturned by PIN debit purchase.\n" + }, + "discountAmount": { + "type": "string", + "maxLength": 15, + "description": "Total discount amount applied to the order.\n" + }, + "discountPercent": { + "type": "number", + "maxLength": 7, + "description": "The total discount percentage applied to the invoice." + }, + "subAmount": { + "type": "number", + "maxLength": 25, + "description": "Sub-amount of the invoice." + }, + "minimumPartialAmount": { + "type": "number", + "description": "The minimum partial amount required to pay the invoice." + }, + "taxDetails": { + "type": "object", + "description": "Contains all of the tax-related fields for the invoice.", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of tax data for the _taxDetails_ object.\n\nPossible values:\n\n- `alternate`\n- `local`\n- `national`\n- `vat`\n- `other`\n\nFor processor-specific details, see the `alternate_tax_amount`, `local_tax`, `national_tax` or `vat_tax_amount` field\ndescriptions in [Level II and Level III Processing Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + }, + "amount": { + "type": "string", + "maxLength": 13, + "description": "Indicates the amount of tax based on the `type` field as described in the table below:\n\n| type | type description |\n| ------------- |:-------------:|\n| `alternate` | Total amount of alternate tax for the order. |\n| `local` | Sales tax for the order. |\n| `national` | National tax for the order. |\n| `vat` | Total amount of value added tax (VAT) included in the order. |\n| `other` | Other tax. |\n" + }, + "rate": { + "type": "string", + "maxLength": 6, + "description": "Rate of VAT or other tax for the order.\n\nExample 0.040 (=4%)\n\nValid range: 0.01 to 0.99 (1% to 99%, with only whole percentage values accepted; values with additional\ndecimal places will be truncated)\n\nFor processor-specific details, see the `alternate_tax_amount`, `vat_rate`, `vat_tax_rate`, `local_tax`, `national_tax`, `vat_tax_amount` or `other_tax#_rate` field descriptions in the [Level II and Level III Processing Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html/)\n" + } + } + }, + "freight": { + "type": "object", + "description": "Contains all of the shipping-related fields for the invoice.", + "properties": { + "amount": { + "type": "string", + "maxLength": 13, + "description": "Total freight or shipping and handling charges for the order. When you include this field in your request, you\nmust also include the **totalAmount** field.\n\nFor processor-specific information, see the freight_amount field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + }, + "taxable": { + "type": "boolean", + "description": "Flag that indicates whether an order is taxable. This value must be true if the sum of all _lineItems[].taxAmount_ values > 0.\n\nIf you do not include any `lineItems[].taxAmount` values in your request, CyberSource does not include\n`invoiceDetails.taxable` in the data it sends to the processor.\n\nFor processor-specific information, see the `tax_indicator` field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n\nPossible values:\n - **true**\n - **false**\n" + } + } + } + } + }, + "lineItems": { + "type": "array", + "maxItems": 30, + "items": { + "type": "object", + "description": "List of the line items from the order, which are included in an invoice.", + "properties": { + "productSku": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + } + } + } + } + } + } + }, + "example": { + "_links": { + "self": { + "href": "/rest/v2/invoices/98753", + "method": "GET" + }, + "update": { + "href": "/rest/v2/invoices/98753", + "method": "PUT" + }, + "send": { + "href": "/rest/v2/invoices/98753/delivery", + "method": "POST" + }, + "cancel": { + "href": "/rest/v2/invoices/98753/cancelation", + "method": "POST" + } + }, + "id": "98753", + "submitTimeUtc": "2019-06-28T19:48:06Z", + "status": "SENT", + "customerInformation": { + "name": "Tanya Lee", + "email": "tanya.lee@my-email.world", + "merchantCustomerId": "1234" + }, + "invoiceInformation": { + "invoiceNumber": "98753", + "description": "This is a test invoice", + "dueDate": "2019-07-11", + "allowPartialPayments": true, + "paymentLink": "https://ebc.cybersource.com/ebc2/invoicing/payInvoice/c7UI9Vz8rdhXbc8FdK6SaoeOATON4TQLhbd5lfib9UCyywvZLhIrSuYYNFMynMCc", + "deliveryMode": "email" + }, + "orderInformation": { + "amountDetails": { + "totalAmount": "2623.64", + "currency": "USD", + "balanceAmount": "2623.64", + "discountAmount": "126.08", + "discountPercent": "5.0", + "subAmount": "2749.72", + "minimumPartialAmount": "20.00", + "taxDetails": { + "type": "State Tax", + "amount": "208.04", + "rate": "8.25" + }, + "freight": { + "amount": "20.00", + "taxable": true + } + }, + "lineItems": [ + { + "productSku": "P653727383", + "productName": "First line item's name", + "quantity": "21", + "unitPrice": "120.08" + } + ] + } + } + } + }, + "400": { + "description": "Requested action is not allowed.", + "schema": { + "title": "invoicingV2InvoicesCancel400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "404": { + "description": "Invoice does not exist.", + "schema": { + "title": "invoicingV2InvoicesCancel404Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - NOTFOUND\n\n\n \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": { + "submitTimeUtc": "2019-07-01T21:36:29Z", + "status": "NOTFOUND", + "reason": "NOT_FOUND", + "message": "Invoice does not exist." + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoicesCancel502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + } + } + }, + "/invoicing/v2/invoiceSettings": { + "put": { + "tags": [ + "invoiceSettings" + ], + "summary": "Update Invoice Settings", + "description": "Update invoice settings for the invoice payment page.", + "operationId": "updateInvoiceSettings", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "parameters": [ + { + "name": "invoiceSettingsRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "invoiceSettingsInformation": { + "type": "object", + "properties": { + "merchantLogo": { + "description": "The image file, which must be encoded in Base64 format. Supported file formats are `png`, `jpg`, and `gif`. The image file size restriction is 1 MB.", + "type": "string", + "maxLength": 10000000 + }, + "merchantDisplayName": { + "description": "The merchant's display name shown on the invoice.", + "type": "string", + "maxLength": 100 + }, + "customEmailMessage": { + "description": "The content of the email message that we send to your customers.", + "type": "string", + "maxLength": 2000 + }, + "enableReminders": { + "description": "Whether you would like us to send an auto-generated reminder email to your invoice recipients. Currently, this reminder email is sent five days before the invoice is due and one day after it is past due.", + "type": "boolean" + }, + "headerStyle": { + "type": "object", + "properties": { + "fontColor": { + "description": "The invoice font color. The format is a valid hexadecimal code prefixed with `#`, such as `#000000` for black.", + "type": "string", + "maxLength": 7, + "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" + }, + "backgroundColor": { + "description": "The invoice background color. The format is a valid hexadecimal code prefixed with `#`, such as `#ffffff` for white.", + "type": "string", + "maxLength": 7, + "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" + } + } + }, + "deliveryLanguage": { + "description": "The language of the email that we send to your customers. Possible values are `zh-CN`, `zh-TW`, `en-US`, `fr-FR`, `de-DE`, `ja-JP`, `pt-BR`, `ru-RU` and `es-419`.", + "type": "string", + "maxLength": 6 + }, + "defaultCurrencyCode": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "payerAuthenticationInInvoicing": { + "description": "For a merchant's invoice payments, enable 3D Secure payer authentication version 1, update to 3D Secure version 2, or disable 3D Secure. Possible values are: \n- `enable`\n- `update`\n- `disable` \n", + "type": "string", + "maxLength": 7 + } + } + } + }, + "example": { + "invoiceSettingsInformation": { + "merchantLogo": "iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2", + "merchantDisplayName": "string", + "customEmailMessage": "string", + "enableReminders": true, + "headerStyle": { + "fontColor": "#000001", + "backgroundColor": "#FFFFFF" + }, + "deliveryLanguage": "fr-FR", + "defaultCurrencyCode": "USD", + "payerAuthenticationInInvoicing": "enable" + } + } + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoiceSettingsPut200Response", + "example": { + "submitTimeUtc": "2019-07-03T19:26:48Z", + "invoiceSettingsInformation": { + "merchantLogo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2", + "merchantDisplayName": "string", + "customEmailMessage": "string", + "enableReminders": true, + "headerStyle": { + "fontColor": "#000001", + "backgroundColor": "#FFFFFF" + }, + "deliveryLanguage": "en-US", + "defaultCurrencyCode": "USD", + "payerAuthentication3DSVersion": "1" + } + }, + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "invoiceSettingsInformation": { + "type": "object", + "properties": { + "merchantLogo": { + "description": "The image file, which must be encoded in Base64 format. Supported file formats are `png`, `jpg`, and `gif`. The image file size restriction is 1 MB.", + "type": "string", + "maxLength": 10000000 + }, + "merchantDisplayName": { + "description": "The merchant's display name shown on the invoice.", + "type": "string", + "maxLength": 100 + }, + "customEmailMessage": { + "description": "The content of the email message that we send to your customers.", + "type": "string", + "maxLength": 2000 + }, + "enableReminders": { + "description": "Whether you would like us to send an auto-generated reminder email to your invoice recipients. Currently, this reminder email is sent five days before the invoice is due and one day after it is past due.", + "type": "boolean" + }, + "headerStyle": { + "type": "object", + "properties": { + "fontColor": { + "description": "The invoice font color. The format is a valid hexadecimal code prefixed with `#`, such as `#000000` for black.", + "type": "string", + "maxLength": 7, + "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" + }, + "backgroundColor": { + "description": "The invoice background color. The format is a valid hexadecimal code prefixed with `#`, such as `#ffffff` for white.", + "type": "string", + "maxLength": 7, + "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" + } + } + }, + "deliveryLanguage": { + "description": "The language of the email that we send to your customers. Possible values are `zh-CN`, `zh-TW`, `en-US`, `fr-FR`, `de-DE`, `ja-JP`, `pt-BR`, `ru-RU` and `es-419`.", + "type": "string", + "maxLength": 6 + }, + "defaultCurrencyCode": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "payerAuthentication3DSVersion": { + "description": "The 3D Secure payer authentication version or status for a merchant's invoice payments. Possible values are:\n- `1`\n- `2`\n- `None`\n- `Disabled`\n", + "type": "string", + "maxLength": 8 + } + } + } + }, + "type": "object" + } + }, + "400": { + "description": "Could not update the invoice settings for this merchant.", + "schema": { + "title": "invoicingV2InvoiceSettingsPut400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoiceSettingsPut502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + }, + "x-example": { + "example0": { + "summary": "UpdateInvoiceSettings", + "value": { + "invoiceSettingsInformation": { + "merchantLogo": "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAQCAwMDAgQDAwMEBAQEBQkGBQUFBQsICAYJDQsNDQ0LDAwOEBQRDg8TDwwMEhgSExUWFxcXDhEZGxkWGhQWFxb/2wBDAQQEBAUFBQoGBgoWDwwPFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhb/wAARCADHAM0DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDlPBvhzU77xaYFVhHnIIPf3rp/il4d1+w0lFWRwi4PBPWvQtG0+LSv+Jj5e1gM9OteP/tCfFjUJPEUOl29q0kEOPMYD9K8aMYVpc0Y3kehgOIcfGrDC4jSLeunTubXwa0i4F95+s3DttwQGbPFeqa1rNnJY/ZUnIyMKoavEdD8R6nq+mK9hbMJFXCgHkmtjwB4P8Y6zqzahqly1uMYjXooFY+wrzbex9X7SjKvGFBuSv8Ah6m1d648OqtbeeyjHB3GuV1bTrrUdUkuGuHwx+XntXWeM/AesabD9uX/AEjbye9cm9/NCu1wc5wR6V14TCUormqfEfF8XZtmWGxCp01aO6Y7T9DkhufNW4kD/wC8ea6jwrosk10Lue4c+UOBmsXR5TOwfdxXRWOo2lvGyyyFePWtMRQwk99z8+jDEV63tK0bnX2+sSRxi1DOY8YIBrzn4w+ENO1q1e8hH+kAEqe+fers3iu1s5NoYSBugBq5Z6ot7A0giPTI+lcFOp9WqXjZo9SjhqsJRqRlb9D508UeHNQtLGRzDJujHYdaytHmm+yeTNCyseNx4r7A8F+HNM8QWckVxbrv52r6mq83wu0LT42k1ezijkJLRkjOeeK9hYnnjdo9+WZRp+9TnzL+up4D8OfDzuyzybhu5xmvQF0KytolkUfMeTz3rrp/DlrbttswqxgZOBTU0tJVVSQMnFcsqkXJts8jMcTiq0ISk7R6HP2pji27m2qPer9jr8aSeRFub1wTS+LfB995kAtH/dvjcPWgaNBp0KoXXzcc/WsKbbTaR5kK86CfVl+3mS9uIxc5K56Z7V07LHbRwy6Wm0DBYiuWsbaNrYmR8GrMl9PZRqI3O0HOetc/PTcrXO/D8U4jDrllBNHdate3F1o2+V3Qkd2rjtTvIbMFWuHY/wC8aNR8SG/0c20jkFRwcVx3iOW5it/PKs6qOWFb16kIWUNUYyzN4qXO46nQaTDZXF488srYPcsa7jQ9Bjn0Geeyuf3mOPnPpXjukX7v9wt83tXW6Tf6zp9kXt5ZI43HP0q6VXnjY0jUcp/DdeW5xvi+XxQNYmtbUXLMr/OyseOa7T4SXeuWS5nuLqJz1IkINVtO1K7juJJfKjmd85Zu5q9YXlyu+WYRruz8oFcdfFTo3cYo6f8AZlR5m2pdrfqdTDqb/wBoOzM8nPzMWJJrivFUl9LrUr2s7pGeg3GtSyvlKlvvNzXG+KLu6OrN5SSFdo6VjgMTXV3Ld9z5ydduNm9D1n48ar4V0v4dn+zdYt2vfKxFEjBmY++OnNeEeDfBHiHx9eb0sAEJz5hHHSqfi34fS7vtlrePJHjdnf0FXPhz8VNU8A3P2WL/AEiJPvR5yfzr0LVJx/cpep+sfWstlJc03fax1F54S8R+BbyHbYpNbqw3YHOK7v8A4Sm3/wCEbSSS2NvKV71wl/8AFTxF4zt55obKO3Vc7VJyWrk/EfiDxJNpLWjw4Kn7y1tSoYqfuOy+Z6FDM8Jhdb6PyPV7HxvPc2strs8whSBn0rgtQsxPeTNdoU3SE4/wryqx+JOp+G9YIuhuw2MkYrdl+K9rdyebdIDuHyqi55960+qVU7X1PNznE4TMaa3TV7HYXkT2kG60iZh61j6vaa/c2rXEVvJtxnFa2heMo59DV4rTeHwcba2tP8USvZeQ1gwD8A7KzVOMZ6q7PgpVnhq3u62PG9H1a7PjGO0uonyrcqT717DpPiTQrScQX1xHbybRhXOPaovCvh7Tzr8uv3NsqiFeXPCrn1PQV5r8V7zSNS8f+fEhaONvL3oOGPt69auVKhVrxTjsj0YTp5g3CcbWPZdK8W20OoL/AGVcKWJ4dTkVu6t4pvNcYNqMgkaNNqYGABXnfwz8PDT9JW7CCVJOUYNuC9OpHFaHijWIdIt3cjLAZCr3NYVJwU7Q1PnMRR9nN0sO3bqX/E3iGLSbFpJ7hYQ428ntUvw1lj1mN7iC+QxqeRur5t8YTeJfGnif/S7hre3jYiGFDwo9TVjwzf654VvxZRao4jY9AfwraWET66nr0MtpyoRVSTc157eR9SeLNbgtNGf7LL5kkakde9cF4VvbzUL6W5vmPLHH0qh4O1E3Vuq3ETkMOp7mt2Aqtwfl2rjoPSuGXLCLhfVnNi/Y0sOrL3+36mzMvnR/uXxjtWbPqaw3SwS7Xz2BqSbWrKwtT5zCJepZj2riNSMt9r39oafLmPHHvWdLAUvaKVN6+Zx4PD1Kt6k42Xc7aPyp3/fN5KNmtOW/0e30c21wu7APOO2K5yxkgms40vZv3/REXqasap4F17W7UzRTrBFt4UHkj1/Wuvka0irnp08Mov3VcTwrcaJdaxN5EirGnPPSoPjF8QovD2kpp+n2/wBoluMIrL0XPf8AlXP6b4NuIbiS2kunVh1YHrVLV9AtbGQ3GrztLHH90k1m5U6lXlvouhrRdLm5YO12aWg+JL6awjYrhzyQavnXLgzbZmx9K43XvGXhfT7BY7C58ycYG1OceuTVBdbnuYVurWBnyO9Kjh9HJQ+86c0yKra0aqb8noeq6XeTM2IZMKetXpHgJBldN2Oc15xofiy5XT3imtDDKVwpJ/lVR7/XpmLxFmXPXrW0qNSrpy2PDo5Go+9OdzrPg/40tNd06SwLKzlCoVjz0rlvFGljw9rrSTxZWdy3P1ryDwbrV74f8SR31o7FVYeYM8YzXs/jMS+OvCNvqGlMXuIAHkRDzjHNXSTw1W32X+DPsK+GdOoklftY0PB91HK/lQR7VkPQe9d5pEdhbws86K2ASSw6cVgfA/wyDo41TUQV2HADd6zvjtr40LSbmLTH3TXa7E4+5ngmvAzH63jMZDD0Z2jfWxhUyXGfVo42tor7dbPqed/EHT9P8ReJLqW2gxbmQhCDnOD1p3hjwVYHbDLgKOpIrmfCd5rNvtkCNNhsn3r23wr4P8a3ujpqsnhu4NrIu4MF6ivrKkvYRSUrerPOqLG1JNUNV6X0LOhaDa6Tp8cjXMflPhVGK0Nblt9Ps98AM8mVwqA4AJxuY9gOP88iO40O+ubqCI2ssENvjzVcdPWuyutH06XRYktIvLntZmQuUz5qsqkZ9FAJ+teLicdQoSVSu7ruj69cJ0KsIuEf3jSvro31Z47rEOp60iPrEs8sTNn7KvEYHXaqZwOACWPPNYM9h9lkUr5UXkhki/dhtiH2PVj6nmvZ49CtXkuFnmKpG5wpQKCgHJ78VheLNH0GDR3uJ7t4Y1YYbZvL+wVecnGMdfx4rD/WLL5TUIt39D0IcN4ylD4UkvM8Xe7uNOvVOnPcWcik4kjmZZHPqSpGee1WI/E+qyXKjWLprqLO3e/3l/x/GtaG48O+JINcu/DVvqkcmhywLdRXdt5TtHLkJMFySF3rjBwfmU96zZNKkvGzHbCRsfxYBP0B6V7EIxqLmcdV33R4GIoU+fVJ+a1/Ez/F2r29ncxyWkgLSdwa5t5b+XVUuIyZMc59/Sui1rwuJ7RcKDLDn2OPeq2h6bfLex21tbPIpP3guRXVF3drHLXoqFJOG5uaT4t1i2sxGtrllGFzUcnjfxIkzF4l57e1dtoXgbUbl4WkgG3gHiuouPh1o6Sxi7wzMcMqda86tXo0p25fuPElKnCTdVad+h4jq+tajrepRyanKfJhORGrYH/166XQfE0MIEYJRAccmvR/GnwP+3rDqHh5RFAynzRj2ritK8FPa+JBa2FsdQmhbEwI6H0HpWdPF0aq/du9uh6kaLrvVpL+tu52/wAN9e8GXWoxWsyO144+/gjmvTVv/C8kx0q01f8A0lVzJCH5Ue9cv4O+H1wL3N9py206puUqOTXLn4f3mlfEC+1bS/PdpARPI5+6e9EsY4xbS6fK53YTJ54lpVElC9n3+7/Mwv2kfHll4eW3m8Pzx3EivtkAbknP/wBauE8OfF7S9dQWWrw+WzjByO9R+LPAq3es3N3dXqxnzHOxz15PNcPrnhN9KuxNDaNcbuVC966aMMNOGmr7nAsppVnLk6M9Kg+H8eoXEmo6UiPHJyAK057L+w9HYzMsckK52Eda898C+LfF+jagreXKltCP9U3Tiu1j8a2viyykkubfy54/4SO9ctP6/SrNVPep91uvUqnh/Z1OX4ku+hTk8TNNC0n2XKqBnaK6bwv4u0FtJTzIm3AkHK15PrV5NHrE0cLFVzgjFdz4EvdJj0BUkRS/mHdx34r0cRU9lT5oxuejhsow+KqeznP2a3udNJ8H7C80+RtOnjdgv4k1v/CTwhqXhG6VfszPBcHZIg+b8am/aCE/hD46S+HtLZ7WwjgjkjjDfeB5zXeeGfiNZ6T4diM9lH5zfIrvzk/1rx8bjqnO8PUVl5K59ZRyejThTxrnZrbXS/z18jQn8PSSW62kSm3ibk8dc1y3ij4d6TfYhn3TMfx5rcvvGV826+uIiYx82FHQdeBWA3xv0CTVlt7RY/tQ42unOe/avPo0587lSv8AI9LF1KMoqNZRt0Urfqd78G/g34M8PwJruvQRvNvzBFKcqOnbua7Xxh8T9D8P25gGl3UkcK8CKIBQPauV8I6nHqGmw6rd+ZKznG1x07jA9KreNV/thGks4zJ5kfl4fgL15xVYitarGnUerW7PhqmOVHGulRprlTSsuvocj8RvilJrGjXr+AfDUNxrMgCRLqEZ8lf7zkD7xAPAOBnr6HwXw1pPxr13UtS1GWDWbl7GRDcva3UMbWTH7uxNyhQQBnaOmBX2t8LfBFjovhcS3UULyFPMk8teTgZ4z3qbw1pEcVvNIIFj+2ymWVcDn0B9cDArjlm8sLQcORO+10fV1KNOpUvGTSj5nzx4f0fxHcSLFrF7JDc3IBRHtB8uMkq2HCkkA8j8jUniD4ft4nsZtGu7t7OO8hGZo5fLlQA5BjPIDKVU89TxXuPjTRIlZWES/Kx2nA49P51yP2WUR+TchXiydrZ2lRXxsswq063PD3Wn0/Q+mopYihyt3TVtTxjwH8IbTwFpuqxRazd6xfalHGl3d3kWzckbbljVAW4BwSSxzgDgDlkegO0mPMV3Xk5XBA9vUV65NYW0nCXk0Mf/AC0z8w/Xmue8SW9nbK0Uf2Jo2OwyzR7sgg5GARzwa+oynOMVicR7z5pSt0PDzPKcNQw3uqyR5u2lhlEiFtzEjDDPrwc981c8I3MmgXc2+3S4s5uJEAy8J/vpnH4j+taWszWChY4iknGdwATntz2rHlm88N5aLhSCgc5YHPU//rr7mu4S90+C+r+0ptTWjPQdH13SnjBhufkfGGBqaLybW8mnkfzI5VOwk56148zOmpSCK58h93KsPkc57+n4Yp9l4p1aG7/s5ndPMxsWX7r5/ut0P0615dTB1ISUlK68zxcRlKk1FbHuHh3Xru2W6s2lZUdCIcng8VZ+EN5pWmXd9qU9hmZXbBI/1j/WuFtI7y505I1kLXD8q684PcCqd/eeNYLeOzsbOWRJOC6rjafcmt5YGNC1Wkt9dD3KeErUHyULXWmqvbs0ei+JPFGonUGvDerbbcui7vujrWXpPxO0uHS7yTEc0sisHkznnnmuCs/Cvim+uvN1plUzcAzS44/zmr+n/Dbw7pgYeIPiLoOkpIclGmBbHfA5/lWPLiKs2orT0PSyvB08thOvWquUpb301+Z4f45TWtX8WT6ilyfs7SblRW4UZ4qWCbUnjw0y/IPlyemK9UvfCfwG0iO4e9+Ld9evnKR2NkzD6A4ArOsdV/Zx0GA3Z0TxV4hlVvl8+ZYY2+uT/Svcp0VGCp209Dx6dbEczmmrt9H/AJXPMFv9RubgWzeW7M2CcdqxNWtdX8O6s64ZVlG88djXttt8YPCUrGLwl8LdH0qNT/x8XkrTSe3oK5/xRHqPibVE1G8tIpjJjiNMKB6AVTcY+6kayqvkcpv3vn+v+R5K89/qUu2GIl8/eA71c0ttVtIGhdG3ByTlfpXqWn2kVnJmPSfLZB6VIdLnuGaU2iruOcZrneIglZrQ462OpU0nKorvzPZPjdo0Pjr4oW2t2Lx7pIliuZmboB0qxqXin4T+BtGjttSt21nVLZD8sS7tp9fQV5+3iPS7VEtTfSGe4G6GFWOXGfQf1rgfjUz2d5HPFYzIlzGGMir97sQa8WlD22MXO9036nvVs3WIUJUYtQ6N7J+XmdtN8V5/EHipbTR9Ejgs5jtCSvzzXp3w18NaJp2uG91LSNPMj4JZzkgn0zXzT4BEl/J5aQSWgjG4zPwWxzxXbN4j1O2bzbe/mupI0KqCchTXRiMPClJKlZN9NTlxWcVZTjD2l7eVz6R8QeJtLns4rKzW3idJAdpAXIHoRU/g2SDxJ4iCyytHBDjcoP38Y4r5Yt/F2strdrFqYlZZm/d7R9456DjrX0j4BSTw/Z2esahprQRTxb40Y4L+9eTjsuVapCpVbSj9x3RqYOso4mUveW/+fkeyanHaWujqivt3Dy413fe9f0rNju7e3jUyuFAOBnvXG6Xqx13xpJqPnLJHHbbIUVspGDycD1+X9a1dQi+WRyc7Tx78f/Xr53OK8HUjGnqkj28t5MTR57uzb/yE8X6vYNC2ZlDKpwB3GDz+YrzbWtek8x0igYxc/OPwA4/OtzxFbBGXzCVJAI3NgZ7E+39awIdMillnLh5C8OMJIMjHceuOuD7YIr1Mg4boY6m8TX1XRX/MnM85qZfJYbD79W/0OH1PVdWu5jL5zW8RBU+Q/t09cZH86x7madpFlUvuiXudwA65zWvqdu8MjIiZVX+Yng4/pWVqimFkkJPqOK+ko4ahhbxowUTx6+Kr4qzrTbM0IdpJGC2dzKoIyevHaoLxTFJ8qhgDkgHhxT5JSDJtQ/NhlXd0wTkA1DcEYxv3Ryev8B7fj2rov2OXl7jpntpI23RKQ33WyeT2z9P6VkPaS/aB5F08YkwxRhuCOD0I6Ee/UVoKTHu6sDztYc4zms43DRagksb4bBB7b/8A64qoSsJwRcuvHfjWxFtpOj2lnE6OcbIwWYnuCTyKbrnjTxrDp7xeI9QutNaX7jxkRhjjpkVn3x8vUY54mba5G1u6t2bPY5rqv+E9vodOW7v/AA9p2t6eq+VdWc65YP3ZT75z+NdMK0E0mtGL2k0/Jeen9en3Hmei67pCTX1zrV7e6hqW0mzd7hnUN2JyelczrWoTa5q32q5dd68AqvQZr17wz4O+EfxKkmg0W8v/AA14gZyVtZUJt+/H0H4V6r8KP2U9I0zw+brxRfNqN27HY1qf3YHY1ljK+HwadatJ/m/uJljIxgoRimt9LWv59b+qPlu2st9n8xDYORnqeKoyW095q0MQfy4IT8yk8da+rtX+CXhnTdaEjTShVJKRk/4fSq114E8NQWNzF9igfzAcPt+bPbmvNocTZdWaVOb+45aGIw0p8krRfqfNOrR6jPiHTbLzRnkoOeO9em/BvVb64t47K/01lSFcBmXBzWvZ+ALfS1nu0l8qSbIQxk/KKgs/D93p1ldXWnaxcNPtLLFKc7sDOAK1ea4erNwjZr5nPisVhq1R00m5LtZ/g7Gv4mtEtw+pNIvlY+5j5uKwJdYt9w2eaRjshOK2/hNqHiLxPpd7catbx2+nae+2UzxYZz6L6966CTWdLjwtjoaNHj7zR43HpnFZ4iWHo1OWe/rc8upluUVHzzm438n/AJs5Y6Dp22LxW9/YW9rKqrbxLKDIFUY5HbvUusa94butOSO81aCSINgA/McegriZvD3hY3ULypLtC7mQzEAnPpXW+GtN8PR2s11/ZdpEIIzKMLubA6ZJ+lRUnSilNNrtoepSw+FrVbc7s+l3b8v1NCbwpp2s2ebW6m+woAUCpsb3BP8AnrVfTfCekabdJc2xeJIm4DNu3H3rX8O+K7CPTbiKGZpN6Z8p13BPxFea614n8T6j4hWx0yK3jWR+5wNufelSp4urUlryxXmYzwmL9uowjGMH13f6s9f8Ajw/ceLBdatBADb5e3BUbd30rR8ZfGrw1q8lvpd9dxrNYkqIYxk9ec49sVV8M+D9Mk8Jx6Tq99DdXbKWmmiYqCSM4HOa838ReCPB3w98SLeXmoRyJdK0iQyHLRgHqO55FL2eHqz5asm7fieo8pqYTDupWle+/wDXX5Hq/wALfEmn2GsXdxHqhls79oYbW1jXLQuzEMzHsAMfSvaZozGuJTtVl2sp7EZr4l1L4lQWcb/8Iv4fnuZgS8bLFgOw5HB/CvsmHXo9c8O6b4ih3NDqFlDdZ/2pFG9T6MjblPoRXgcQYOm19Yp03FaK3y/4HU97IsZzwVDlaS2v1MbV/Kub4q2ZVVtpU9Dx1rm9Wu4kYRND9lnt3z5iL+7IHHIHQdOe3NdRqMaS6dcS7CPnEaMDjJ6kjFcX4he4W43qSXQEHHU4r7Hh6Hscsgr6dDx83lz4yTOX8RXoXU5fPgaSO45jZF5UH7y4/i6Z9cEGssXGn3BJjYTKOGXPKfUHn/PNaN7cWSTL9pikZHYKywg8H146H3x65qp4y8F3Kaf/AMJNoN/Ff28P37m24kgJ/guI+qE/3vut2x0p1oJzbNqFWLppPcz7y00+eBtj7WUgg+nsf8ayZNJ4mjV1O5vmibg1c0WSKe233aTW0nzAhFDBjjoORgH8RUS+J7CzvhYN4f8AtcrQsu+4uCpH+5gHlcZyfX0rmk5JtJXsdHs4vd2uZ15p03kiaVtiiU85wSf6Vm3FpKJVLdFJ3ZHQGu7h18X+krpz2lqscZDTZgAnBwB8wOcqcDkZHvUN1Y2r26rEhhZQShRQQw9/UUU6nN0syJ0XHqcRrWnD7Ostu7vAeWCDJT8PSneGdT+wa00jRrNDIvlXMZYFSR91weh9/UH6Vqa5ps0TGbSZVs9RxwhOYrge2f5Vwsl48eqN9ttBaXDOfPjjY7C3qq4+Ud8cit6lJVKbT2ODEUY1YSg+p7j4XvNAsNSj1W206OO524dkAzivV/BXxK0m1VFjaaF2P3W5T8a+e/CyXeqaOJIZI1AUhyVO7I/yPzpbpdb0KwF815avDIdvlzEIxPtn6V8vLLa3trupr2u/1PiYVsfh6nLzxb7a/nY+hfHM3gr4gWb2T68/hvUXIEN9Ef3Mjddrdq+f/Hln448M6pqOnPrNtdTQSeXam3cOJRjhs/Qiud0nxnpevLqdvc3T28sdpIohz9zHVgfX39q2Phnpp1q4jt4rlp5GXPmvJkt7mu+caOHoWq0lzR3dj3HjowoP2tD3vTS/e5L4V1bxk2lsuuQ2q3BbAzwCPXFbl5rWgaDo0t34iu4vtQjzBBEeWPsPSnfG3RtQ8LeH7PUBNGUuX8lpGG7ymIOOOh6GvFNqxfbbvxFaf2h5qZiujKQWPbiuzC0FXp+3UVyvsc2Fw8azVZR/r8TvPEvxI1DVfDcNt4a0lpmRfmAbALepHeuej8T+LWiX7baSedjkINoHtiq3hBYreDzbORolHOFf7td5o/iVTYIJDp9wy8GQuOa0lShTk7QTfd7l4nEVJy5oqP3f5nNeHZ9O1C+mmu7IzEnKoW2iQ9h7Cu70mLT77Tprf7PDHJdEYjiZmWNR/DzWTd+HbaQAi3W3nAyjwnn8u9bPwusddj1Ce01KC3Syt9rb2U758nt9Mc/Wj2tKrHmXTozPD4yNaP7mXL01Wv6mv4U8K6VZaSJI7B1Z2JMqgjPPqawfGGgD7RnTLLzpnGVJj+YdeteleKobabS7m7sLvdJboii2UZVB0ypH1rzzWtZ1K1vjpmh6Tc6prGMSCMfJbg9DI3Yc9Kwq4qUWla7+5fNmuIlGhJQhNvzW33dPQ4RbXWtHZ5b61u1knYqoRmD5PGQO1Ub/AEtX1yOwv9RSS/uPlihuJvMYLjP+P617BpvhS+t4Tf8Aiy4RZ5kWVlkbaqDsQT0X3rh/G8nw30LUpPEOn3ovdQjj8sQ2Z85iT/dI4z1Gc11UMTGo23v5I9F51RppUqF5O27V9fIqWng67uIYvMns4DEMfu4yWA9c9K9p/ZS11bae9+H19qy3STXK3Omic7RGzKVmgX03Da6j+8rf3q8btfFkly1r9n0q/t47hSSLtNuAOvAzjjpTPDusSjxBPP4WsYWhiuInMk7kyRybuWUjoc8jmuyjhVXjOnVXuk4LG42rUdStPZ/jbyPrXxBoNxpeneUMNbSzFjKRkowHT2BH8q5HW9LkS/e52BlwPNj454HNdl8N/ES+O/CshLbL4R+TdQsOBMoOJU/2XGcjsVIqvqmgzRzqnmbGZeGKkAMB0P8ASu6OHjRoqNP4TpqTnKo/abnmGqaNCkDyGISxzZ3MB831xWJf6SJVkWIzR+bEI1mglMchX0bHJHHQ16LrmlSG1ljdlRlUlQh4fj9K4uSwuHgGYpF2ZJy3ysOenuK8isnGTfQ66VpLzOD8Q6fe6au+3TzfLAEkeAFf3U9FY+nQ84x0PFalqdvceILN4/MjuEuFDxyjBPOMEYJz9AfpXutxE01v5M8as3GYyMbh6+hrjvFHg2ZGN/YoNzKR5ToGV07owPDKfQ8fSs6VaKlqjq5nKKuU7iwQTBwhIX54/mwy9tyMDkemQfbr8tSQzS2tv++fzYef3ypjBzyHUfd+oGPUAc1jWWry2M3k3VtcFI2yIyWaSHjBKnrIoA9fMAGP3q8Vu77e4tEvLS4WTfys0YBUjn72DjrgZ6Z4+Q/LXHNuErSR6EeWavEi1CKOe3aJgWhYBiFb54iejKe49Ox7E9K4jx3FFDH9m1vahfiw1iMfKW7LJ/d9+30rsJom2MsYS3n3MBCpC89SUJHGe6kYPcd6x9Zkgms57G8RSssZ8yCTIjlbH8GfuuPT8iw5rqoV2nZnJXo3Whk/DPX7jSrG8JjeZ1JhntVcZWVe6n3BH1GKwfFFvr3jC88/WNQMNrFL/o9pGuFjXoST61F4fd9E1ZbMEG3mO62lJ/1ij+E+69MV1q6NJqeoRudUitYJEwGlUmPJ6DjkV1OUY1NN+54GKwTm/a04+9+Ji+GNDi0q6uokkh/f2roAw+Zxjkn9a7P4PWs+g+KLe9tLQNtUq6RnC4YDJOe9V9D8B6v9quG07W/D+pwwPtmZdTUMhIHy/OBg89M8VB468P8AxCght49Ok1K20tZCb3+ywsxfA6CRM5rnxOGnVcqbd1JanB9Xrqpyzi2uu9vvPRP2pB/wlngnR9Js5DHbLMbm6kHqvAXjvyf0rkPAPhnwpd/DfxHbeLDeM1jamTTnWFlKOMAE5xlCT1rnvBt9qnhrTrnUv7SmN1Fj7DFMSW+bjcyt6enrXo+j/F/VNU0u7g8RQWbRW1oSzvGMz/7G3HGeK8/CxxuBp+xguaC63s/u6/eaYaTp+5DZp/l6+XY8Y0HSILGzuYLW9t7gXQKhpUPyJnPHvx1q1HpRC4tiqRjoANo/Kuk+JGu+E9R1CxvNJ0RtIjb5b2ONsrI3UFQOg61zeuDw/pF99lg1T7cGUStJbFmRS3OzkA5HANehTqVaqVRppvy/yOapGUt3dI37jx1oN1p8ssAvIRbtiaX7OP3WT6H6VV0X4paF4YvI5JdX1TUI23M1rdoBvz0w689hXnfxO8DeKtD8RLpXiHQ9W03T2YD7VLbNErM2MK7DKsAeATjkmorrTbPTbW001NRdpAzmFJFEj79vy7cD5s9OCa9F4SEo8sndfL/I76eXwg4vmene2/oe3eFfjBDrGk3+mpcwWr30mBGM7o4gdww2MkjFVZfEXibVINWit7NdDsTMv2MWEjGe5A6mSQdC2OfTNcx8JfCGkeGbxtQ+JOm6pZ3GpQM2hHUA1qs0gA3EIw+cAMM5wBmuguNYsbO4uFgurBfLbY0UbABSRn6E9+PWuCeGoRbSTdtuy9DjzCM8Jy1FSUlK/wDTS27o4XXrtJtTmOp6Tqcl2YgJF1C4klLY6KNxOF9ulV18WzWHkW8ejWltngRn5QMehxXZ6hd2+oeJreS/eSxtBCsUOoKw23EwblcZ+ZRkZP5V2UPheKxuYrLWbG2mkj5e7tQsoVCN24sM7Tj+Hr7VtCpD4Zxd/VmUcPOcISVG7l01Vr9+3keX2vjq8+1GDULBFgkB8428nmSBfUA4qjHrdtpt3LdWGmXiOkuU+z/Kpzzkn+gr1S+g0uG8CS6RbvDKWFvI6CNiASPmyMg8dD7Vl65oaXOLWR9R0iFl4YBfJbPT1B/A1tzU46JtN+Z2KNPDO1Sm15rX9TS+GvxS8YJrh1U3mn6Hb6asbtBPCD/aYI/1QRcEkgcnjHDZyOPpT4TfEnw18Q9Kk1HSLpg6N5dza3cLLJayY4GGA3o3JSQcMAeh4HxLa+DdDtPF9n4smu7jVLayulknCSb8kH7hyflU479q7+6+Jo1bxpBquleNbrRDYylYYn0rzo5YSMiHy42yOQOvHAPFaQqTo1ORK8H+H53PXjGniaCmnaXrfm+/Y+kfFljeJeyTWMEe0A+bsl/1TDuARkD2rBuoJpLVYrgC3bqXIDAH+tSaH4mn1jSYbiS78m5kiBL+WFLr0DbG/IZ54x2rQh1HTr+2NrdskV7FJzvXCsPfsOv40VqXN8LMoT5dJIxLzTmh08ZAfzDhTs5T6DqawtSt7sR7oGhkVOjMcHcOo/KvSb6zgttNwGW4t9uVOM4+jCuA1S8sxdMhVoFDYBU5DfWvJrpR0vqdlJt+hz9zpNnq9rNaXCxKsi9Tg5NeVeMNMvPDusNdWTyq6g/6TCfn9/MHSQe5+b3r2i4VDGZCVMOcAYOTXG/EDTlVWnUmQMP4XPA9DWUak+xvG0djjNH8TQ6hCsF7aQMwbGYmwG75UdR344I7betSaklvfadJHchisinbNIpyAOz4+8M4Iccjqf71YN54cmfVA9rLbwtIeN8yoCRz3IFac9xFpultdaxrWi7EXIjN/G0knuioTk8cnj8+a6Y0o3XKrF+2clq9DzzXDdxeIItGkgkmnkkDWcifeZgOc44Py5ye4GeDXV6PdsjtaXij90SpBPBPp+NHibTF1K1t9X0C4jme3dbiBV+8hB3Aoe4PdemCce9A6xo1zrEU94/9lvelhukI8ssCAyE9DgkZB5wQe9dU1zRTtqcvtPZz8mbOtaNc6hpLWmn3Ez2MsgkmtUkI3t2LD+L0z14rlk1i90d20vw9e6no3kvk+XK0bscZwCD0zXoT+G9S0+3W+06SG7jODtjk3YHqPT8fzouodK8SbHuhFb6pbtuSaWEOrsP4ZVP3h+tTSxCulU27/wCZp7NSTlS/r0MTSfHPxE1bT2n1hNIvtPZRa+frEaTnpj5XX51bnPGTSXL2OoXcaPJZ2ETIHd4i+W28DhsnaT3PPtXOeLbO80HxVbaj4htppoYZ/NYIf9GlTpkKmMD/AHfxrtfAY8Oazo5vLTQbqSEqTK7zKqdThVUncOBmu1UHON47eRzfu6k2qq1Oba+0+73TvZSXKqCIx9qwwPY4Uf1qKLUrpV2weFLeQd3dXYk+5zXU+M9N0/w/4YfxF4cmFtdR3CqLGVBJ5iHqQe59sVztpr+r6nEbm11e6to92PKYlcNgZOO3NQsO4bK69TmVOdNtafcv1PWP2YPB/wARIdD1DXNQ+K0unaFp6nbptvcNeM7Kh5EU/wAgAbGB174wKy/Cfxz8ZwzW+l694Y0vxlrFxOv9mXJsYbZYguDKIjHHlpAvUnHOPxvfDzwR4r8HWc2n6lpc1prGtP8AZVinaKTy0MbMzoy7lzkqACT91jivLdc+GviDQ7+SLWfEBeXTpWfNvI+EViMnd2b3AH6V59Ct9YqVVJWirJeb67fd8jeOK5HzRUtOrWifU92+O3xW8Q63DoNz4N8J6Zf2vkXEmtQeINAS+fTWBXavzZCtgPnbxjBPavBfEfxF1G6njtIPDuhQ2rWrxQnTtNW2AbORKyryxBJGeuCB2rYsY7dLq0uBf/Z5CQGnQtJL838TAsSACR19aj8aeAtT0+zlkg1uymsGuY2mVI2DrDnqsmME9TjAA9eMnpwvsqdH2beidterepHtPrLnVcbaa27W6dTiHlW6upLNPNuIPNw0xhSL5go3gRgnGGLd+RjgZrq/CPi7W/CH2aHRLtpPslybpoZUGztyO+SAAVPHArR+D/gPSI/FKa1Ho7axbXV6YYrzz2aJn/jiUoxQlQN7A844NXvi5p8HiLxBbW/g+w0vRtPsX8q5u7mCeOR23EFj8h+QDoBuLE8ECvRji8HKk4NX9RYaNad6tJ6beZr+OPitoWt+GLF79rdtSu/N+1vMwiZHAGwj+8Of5isPT79r/S2s4p5WhuIS8sKMSkiY5yBwQB3rhby1uY7ORc295Es5gDIqyxu6nIOD8ykcHnGMit618bQ+HrXQzo1ppGpW0Max6tayWHlJFcgMuPlcmQbcEvkZbFYVsKlC9LWx1fWoO/t0ZFxc6PoWuXaaNqN3p8ckW2axnKzpcMR8rQso3Bef4hwQRmnaTF5dutw0lmdvzK0L7GbnkL0zx1HtxWrdeIdQuby2n8K6ToNlcgSsIYNNG0RFOry/fIX0zj29WWMF5dW8MVzb2t1dTPlVFrljJjO1MEYAPIzwO/SueVSa0a/E4JfV5PmjOzfSz/S/5Fy1+36ZeRaxpOo21ncX5MUMrgfNhd2CzN90A5yeMnHWtmw+J3xA8qB7ltOmubD5Zbpov3NxCp5MyhgVBwQrKc5OCCMY5e5sfEk0LLqOh+WI2kiNtNE6mNhyZODhlwfXsfWprhrafTW0k6KttbyY3mCaRDJgDJZueOCenoPeuqjVpRio1It+lv8AMmTs7e0SfmpL/wBtPefhX8XdO8Q+HxcQXsWnTNKsctnLN5kW8naAr9VLEfKMZx1NbWrXFnqJYh44pVfDyRsJY0b/AGiucV8z+H/C+neGLX/hMU0+/wBN1CQSR6XDeXSzNBFjDXWAo2MVJVDk4BLcEqaxvDdxqMPiu7hi8Q2tukame1ZpdvmycYiTjlyC3XjjrWMqMK0mktPPodSkoRXva+XXz2R9T3FoI4G8xCr7Cyk8Dpycnt/nNcXqWspJpsqXbHgkCeJgWH1HGR+tedeNvjV8U49ChhuNUkEZbELrborIFGADjnnGSrdzk+lZHwH8a6v4l+NWk6bq00bRXyyqVeNVUuELbwigfMMcCsp4RuD5NLG1GvDnUZu9+xd1jUbBry8tNYtLi6tVG3zYxvdO25ARwa1PDfgubU7P+1NC8Kva6f8AZ90Y1gou/qCFGd2CMHJA5z9Tg+Jr3WG+IFy50fT2S2u5Io7m4uHRp9shCu7A9cYGAMcfjWX4+8f+NbKOfQ2axW3mjPmpZNv3J/dD8k8V1W0iqauKKo8zVe9lt/w52fhvQmgsJdW1GQado9ncLbu8UvmSXMzZURW4QMSysRxwCSOaszeG00lrnVNa0CHxH4XupPL1HyG3G1kxtWWZF+46hx8w7cZ4FcX8O/it4m8P6T/Y9/e29tDb2slzpttbWqs4uN3CyYHy7gTyRwcGpvA/xLmv9J1ePXbr915dpm1trryfPdZGRpZN3DOEPpyoA7UO8E3a8gp0qDt72nZ9LF3xlZ6Lo93AnhPUryYjaYbiMqI5I8AZBYhmxjHI5q1p3iJ7y8it721M0CkrFqCwrDNnsHOdrDI68dx6Vzln4r0HxDqx0zR9F+23Dv5dijK6s7dTtAP3e5Jxx6VstoGs+FraYa5a20c19K0ltaW1ys/lIy52Er1Iw30GATms6snOPvRt8jphRhGblFppdmzsmlM9iNO1mzSe2uI96bzztORv4yVPB5Hp3rm9a0V9FVrvSWa4stuWTADxj0YA9MjqP0o8Ite6tqkF1Jdx2sEMeyGPzt5ZQcFymeTwQT2247Gu91u1ttL097w3UVuwAMrSFRBMD3YZ4z+dclOu8PNKPX7jxcbnGE+sOk4veyf+Z5vPB4m1yO1s9MtCDMRsljnO3aAzEEkYB4PGe1XtP+H1hJE0jeLNPkLOTmAuEX1ALY3YPfGM1ZuxqeiXklz4euLi3kfElxZI5USL94FfXsfWotN8XaRdxtNqC2S3DMS/2iJRJ16HjnHrXZXxlaylH8DDEYqNNJqDlfsd54israz0WPwA3hPxbqTaZAIUvILe5tUvF2KxdJRt8yORmkbcpIwO4riPiFZ2+l/2HL4E8MTxrKHS9EMZkaP5Uk3eax3McSL7Aqce/qHhG+TT0heHQtU0+7S8mubS4k8STQXjkSBdzKCbfkyAECL7pGeKl8Y+KfD1z4rt38Ryatot7bwMEsr3U1EcnmFtzCSO3QbGy2WbI4GOmK86hGNKMFG7te/nf/g6nuQoVowhCMkkuunT5nnvg/4j6/cXgs/GuieE4LedTa7PEFn9oUuoJQKSGkAIByQwAx68VzurfEDwPqF1BZan8KNPljbCyPofiKezgILYY4kWRD97oAM96sy3mm6d4ok07w5qNzrVrC7y3up3Yubgx/LuWCO8kjUun3UUBUPA5PU1fGmmeJV8uOPVPDGichYdN1DUmgmuYmRXEgQRFFT5gANwOQ2AcE16iope90OZ1Oa3LG8l1sv8j1v4OeLPAt78CYZrPSNetfDWkTyW6w311aXAhk2BGL4EAkXZIcp/FuPGea5L9or4keBp7iODwb4fl8yW2jcz3KC0dTjO14o33BQAuMnr9K47QYPE2mxSTxv4WSSG2ZTJDeeejsSyL1QrHkFvrhecmurvvD/h34lXF1r/AImtl0nVLmGD/iY6dbJawXUW4os0cG3hMDHKt7FjWMacYyftNj0PaSnTSpp81tf+AeUXEF4dWj18Wlxd2DLtt7tLN4LdsqFeMKeMg5Ulvvbcgmr664reGbjQb2zs7ix+0iZgI1ilZ9uzO4AMw2jbznA6Y613Pjzwv4i+Hfi618MeEvG2raXb3Fsk99pniy2D6aJGbACXESNCylB5gdcLtOPlIIqHxF4cg1bwnNdS/wDCE2GqOFaK+0vUJvImy2G3RFdxJ6Dhe55ArZ1Ka0uZRpVWuaOve6/pfeYXh+7h1Rb6GygWGQ754bKIssaRd41bBKqMjGcnt3qDQ/EGu3WoXFvJpq20McywySGT5S2eNu4ZHTt6++Krt4XsfB/iqZD8QIZryM7XWGFuFznGwsMg4yD6fWnalqFmt212ZxP5jGR1UkEsV65wQB2x1rnlyOVkr/ecuJw/LTVVQV/kaa65LcTW0E3mXMm+UBDd7duDnLKFHUnqe34VqaLp9prmrXc/iKwl0/S9GiEt9JHfM25jjy4M7RlpBkkDoASeozm+D7DXNWmaxsbmwS5edEmvU2Dliu93TfuO1chQB85UrkZBpfjh4t0ew0ldB8FfNZ6Y8by3RgIed3zmSRclSzsvOF4yB6Y1jQcUn1ZzU4zrLnrL3V5LXyJ/EWo2Wr60t/qNjqVzazIIJYLTUI4YY0ByqbDE2QOB1x8vbgVkySeCLLdJPZ6opQmRYbe5gTavRQziMkDpzt59q5ptR8by6CGuvDNzp1lJGGnupreUSTqTwApxlcjIyvGM56VNrl1aTw2d9c6KyXULbLRApV5ZeMbx02gckHjpnrSjT5dyK8v3mtpX62t/VjQ1Wa0g1JbWKxmDSQtNColEpgJJwGYoN/Q5wAenpz2Hwu1HQdP+J2haNaztLdvdQsjLY/Z3cNneCpycg5HXPTpXJ6Sl1e6fDcvsD7z/AK6UMVGehA+6p5yeAOTmuz+HngrWv7Y0TxrF4Furm1fUreRNcSEqtsiTbZSF3DkEEMcHH61UnBp6amVGdOWIjaNtSv4tu7QaxPpUjadp6Q6pdM9zdkJEoDEAO2Gyxw5wPvHAAzXPQ/EPwro2sR3mp2N3ckShhpcebN7yJQwTMgU7FJCk9wCeM1Z+IdrPf3GopJeXEcV7dySzpBCVE6LK3lMxZcEA7sN6nryaxYdK8I29jHLr0t/crM8iWmlaPPEJG2dfMnYcZx0QccfMTxUUfZWTd7r8f6/plckZVGr+8nu9EvIofEbx5D4v1L+0IvC1ppc+xUxbT4DhQAQxCgHpxx+dc9JqN3czeaNF0KGTADNFFtZwB/Fjqa9Gs9K8LC3mkf4ZFFjiBgXUPEdxMZ5CQFTEZHXJyxAAwevWtNbPwokjzW3w28CW88CJ5zXEcsvlDB+baXIYggA9TkjtkjWWKhGOkHb1X+Z1SVG/NOsvkpf/ACJ554T8WaroFvcLpP8AZunyzgLd3UMAWSQdADL1VRnpjmtmLwH4v8RXUd02t3T7oWkR5EbYwP8ACGHXccjp74rs4PEVxEIbCxuvDtmbe48/ZpmkWsKR4GCTkcnA45OTjiresePvEtto7XFjrd3qr3DOha8vBDGrAfMwMe1egwqZJJ7VhLEOUlaCv5/8N+pFXEU1Dkp1JfKOn/pSMXwr4U1nRdbV4dB1rUZrV40L/ZJY4JAc5CEDlecnrjHvXV694VurjULaK90oKED+ZeyX1uv2Z84V/Lc/MDngdfauUtfEj3ektcancXkl3O7BIo8vGFLEqB5jAKVX5ScNuPOahh1C8uNWSFf7Q0yCABSbp7V4fOkA2hkUrJ26/OAT0IrWVSs+y/r5HMlRkkrSv5SS/wDbX+ZqX17pllotva32rTWmqLKS6MjTAnAAO6MsijABwrY+mMVg6xF4QjulbUtT0triZBIxe5+bnnnaePoeaLixi1q3S31O+KxNKBNMl03k5V/mf5cRgEgg9BhiK7HwvaMNGW4eSz1lbiV3S6uobaQ4zjYrGPOFxjBJxzSjZ7u3oiKVKpG9r2v11/yNPxH4i8Yw/De/1fwb44uNcvodet4nvZruK3kRZwV/fo3yQ7XSMbwxRg+Q3BA4P4vTfFUR295488P6xp+n2zKj61qcaur5OFCSKMKmUbDZAbB5raXSPC+g3X9g6xqttEupWyy/YbmaSX7QPNV4pXYZcfPHxxtbBrrPF2t67c2+tX8fihdNF3c/apdjrFHfOqoyRwBw7FgST1+XLAAda4KVTkWkU1320foe9Ro1pRlztr8TivC/jD4gJ8O9RuPBHibQdUs9K2vJpFlN9jm08FgFk2KwWdchtxjLEDBHXI6bw/deH774eNruuRprlxZ3yadPNFFJcxKrGOTEHm5dVVSeBjcPMxzg07SdQ0zWoWfxH4F8JXniK1UNNaRRtps0aOztCUubfywGIOSZFbkHODyen8My6OfhnFr2lSx+HdLh1U280V3fRzyK7EysrsAhRCInjLEFgVA+YcjlzKpOnQdShHWLV7WWnW/fT59ip4qrTpcy95NeqW2qv9zXmW7f4F+CfEV5Ipj1uK1eTAurMRxxzozbVlTdHvUYJI3dQM4rkviFovw9+F/iWz03UdQ8SWsCTF9MlaGG5liKNn5SzqSCzAhQMd+ua7H+19a0XXdY8SaffXtxazW1u2RdfaLeCDyvMDGFQGgG5nTL4B2jDEMK4i61zQ/EeoW/jjxRDNq+oaY6pDZW5JgiZznKxNhmbaDliMcYAya48txOYVZx57uNr+t108k+uh1UcRg6uFdRwfPotU7X73WjXbqMsvFtong8/D/S/ih4i1HUpppJbFNU8EedcpDKXM8JUXDpLG+5WVvl8sglGUMQavgvSNPs4f8AhX1/8R9Yu5LK4W7Jm8EtJe+Hy8gYCBhKwhWXcQyysYgP4QTuHpdnpdrr3wwsvGOnXM8X9pWn9oR6bcWu1k80hljRRkMDGFIwMYIA5zm7+z9oz/C+71LU1SPVta8RIq6raIjLHO8eCSE3t+8dNwyTt5JI617MqkKMvfnZPyv+hX1dVIaR5n6tf8A828Z+EbfU5be48T+ObLzNPtTbJdT+HLtGKKTtJ8oyKAe+4krj5eCRXO6d4Gs9c1Q6Lo/xI0nUZwGcW0OkaluEa4BfP2cjCkjr69q7T4mfGHQ9Q8VXNnY6NdWSwaYEu55TFPJNvkcgsgOESMAAv1APyqO/jvjDUtP1W8tkg/tLSJHthtM92sCEdAGyNp4OQCy5HXrW/tZ8zV7rvYx+r0klbS/S57l8Kfhlfm6W007XvCV/ZJl5biz1MXV2fl4YQyiI8NnAXoR3JxXJ/Fjw54j8CXCm08KTxT3E8sYurrQpPMhUZzLlWkhIYZIOcjqQK8vTwzr2sX1vbWksUemMipaXxg823lJZkjIaMlljZwu9s/KGJAIXA6vx58RtU8MQnxD4Ya80e8is4bT+z4ryW3t9JuUdIpRJChPnSDytuGYY84udxK1jOVRyjyvmb6baeupjOcFzQjpy67floZeg+JrrxdZrctqsN8I2+03omxMEZWCkHBLYG8dOm4kdDjtvF3hbw/pmj6jq2i2d/p+oaFaxzE2Ya9W6gl8pZQY5WJKqGMhJOAAR6YxpPiprc99oOt+IvAPhDxVcatCt9FJe2C2upWrEkBPtEZjkYksdrMWyOSM4z2d94x+GcvhLV4tQuPE/g241Wzh069trpoL2O1kyokWJS0czLiNVJJG3GcA4FClLRqNovfr/AJk0VRrUZOT5pdOlvy/A8stRpsmkahbveXCswlVJ47ZVaZVwULk/d3Et0ORge+ex+DPi/wAR6Lav4Hmmjk0/XrmJvs14wZrUsU3SRDcvzMuCdw2kL69VsfCWh6nYJb+DvijoeoaisG2eS3s7mNmcsxUmxmQg/KUUmORiMFsHNc38NfB0i/EhtUudYtmm0eSdpbqzDuJZYwwa4dzykYOAu4ZJQ9ARnojHnlbp/kc0MHCn+8jJp9v+CWfHcWvWXxYnu9EuF0+GSwicypI3mRYbCyOeBsZmCFRx8vYVia9YTX+qKHgjWZZREryOZGEpbBaGNTnJYjr19a6jxLFZ+O9W8zRr4q1vbrClvJMIZJlBLF0LDB5YkKe2Kg1DQ9es7W7vbLSQ1np433sk8hhjZQrZXzVyyucEgYyc8A94c3pyf16nPjaNSck1d/j+RlxaDcXVw8qXMl4q5KOco7FCyhSpPyAYH1OemMFbMwPqa3VxpWrzzb2zI7bg0bMOZSpUMxGflUn096j8MnV31q30tZW2lFaSLT5ftDICpdBGV5Y7yFxxgk5xXTaxoOr6peNC3g7UnRGVWey2+bFMxOUucMygrjOXAYjgnIzRKUlO0jh+rzfexzen6fDI0htrBGtMv/oxt2SZiOAq7uikjuCQORnNZF5uuPs8c0m+OzixFasVSG3PzBljVjy3Xk/MSTnNeqWvw1/4lSzajE0H25R5S7lIGGG7zFQnoOOoK9R70PEnwb8PHT5tbm8cXrXPnQrLoq2awrcEBQJVlcOqZx353fNk5IpU6l5a7HVTwNe13on95x9hDaR+Hba/MevRaoGaKGMW6PG78ZKyZHy4z91XOT61iaw/2y1VhqMl35as1xczRlWViSyqqHlwMqM8ZyemK6uT4V3Nxr0I0/xVdMsjbrd5YUixxuBYptG7gEDHp65GX8SvC+ueGb2ytbvxB+8ktGkaV51HzI7BiFUsQchTtbDc5xjBOylHm0ev9eRtUw9TlVoJef8ATI9H07WLvSZpba1N9pb5AhkO2G4IBGdu4BiuSf8AZyBzS33gqeSfEehyyiNQpdXVQT9M+9ex/CXw3oWmeA9P0Nr5beWGz33zSAkvIw3SNyScs5bpwc9K53xZdaLp+uS2vhtrvULVVXzLl7kfvJNozgADpwPwrnrYj2dtTto5R7ZJt7fI2NL8BWMWmyTm7lvrBpjEk+r6SZAUAbYZZrSQMDlcBlTP0xVfxN4R13QY7HW9Pm0XVvCVup81rDxNLuhYrgMjXiggjpsIbJPOScDPbwd4dv4bf+2PFt3PHHu823ijZryWR2JLP0jC/KOgAChsYzzBd/DO/sfDSrDbabHBNcZhjvf3mwNyTEV3oJMZGSAfcHmkp3evp1RXLVUbpfl/w5qW+uXsulxapoEF/cWU8WI5tf06CNZmOCQoCqX4wMx4BOTk1Pa2/hy600Q618KtA1LcskzxaZPLpscjhfupEsm3cFB3SYJwx565paZH458GwPYN4g1SCG4tCxtBdLMbkAn9yIWIjyAQgYnA6j0qlJ4C8XIkl/4h8X2lveBpLiy0eEm4s52eMrIZWO0A7TtKqCBhjn7tKvFQm48yTFGjOrT5oxsd342n0hL6GSy8P3+h6taqSHtddyqWpiZHRTFGsgjA2cMWTr8uK5K60qw8faV5mpXfiCDVNLlKpevqcsiJI4ChlR2dBIudu5QuByQetc3rUq6JqunadoWn3Gual9gii1hnv5EW31AIHkkaRAhKmMgDDhVLDBAG2p/DPxKk07xtfWesQreafZ2kqwNAArXF1ztRpAfmXJYbgD/CeStYYOi40uWkrLsv8isJyU4qTdkr6bW/E9eW9Twz8NbHwxHDctFp9gtpdSW6h1eGKNstEoBYFgsYOBuOD0Brzbxn8bLOHw7YQ6b4evrM7UD3t26wrcW5+6qCQZzuxyBgbe+SBpaN8X9N17UpNPOjrpseobrbzDqBlVXKnYjHyxtDt8pbnGSTwM1prNqdtp9vFP4N0ucxv5TrLDDLBE4QuoDqWyNoY7V64GT3EV6LjK9ZP7+h69Ct7SF6TX/BPDpNWtNfvrIPZWNjILjbFKZizkn5V+cgKOSOg4wPWuttdFtltTYXv+rt70/2lMwSREdeRGHYlVO3ac9QTjcMYrd0Lw5ZWc15A+kWcT3UouHUSeXCHaMOigLxjlfmGAOepFGvy6r4ft9E0l9J0NdT1a5F7MljqSS2trGDtCyqE3Bjjjjkg59a2jO8UoK1u7PKxlKak5t69WtEc5q+tapF4Zj0jxG8LWkVuwjTT43Xyownyh2AYIOD04JJJNX/ABc1p4g8K2evaZZ3k1xaqNOvtFELOxmSJVju2dzgySxAozfKcwDIOc10lnptxqmvW+nWUyiSBvNvr1UhV51DH93CpYYcgYVivAywwQAeem0vV7e11DQL/Trzw9DPpM1y7tp8sixGAGczjJ+ZysDqcNnDn6FJqo1Ubs1+XU5J4hqC1u1+RhaLaWt7eJqd/wCHpIb7TQJIJmcxC3lX51dkYNu74xkVrWI164vr3UdNvbu7t7iDzJJrgoxWc4zgDJIGT6dhzziHQbTU38YSeG7rWruPUNLgSZJTZvJBJFgOsgkI2tEVZT2JBI4INdjqDaw+uhW8GW+lW8tx5NvFZooEkW7BleQthhydojz0Peun94naD07ip0uaHOp6/mchLH4zOqW8XhprILbwiMpHfSCW7Lc+Y4A4yTkqCSAByelct/Zviu08J3mlJDctZb1VWtljK6r+8Ls7gncxBIBDEA4yRxXqiwNNeTAF7NomCJJb3SpLGWXGBt+YEgDnPOcgCtuPTrS1037UbjTnRFMZIdkmRht4OOOd2FJPJJ6HbWXtppe9ubqjUcNWeLWPh6/nS6tP+EfWy3zxteXTXAmaVchZHijyQGxuIGAv5V7D4it/htH4fn8LeCZPFWn6dqaxJdlNk0l7CrgJE5bLKNzRnnkBeoA4rmOy09pbi7h1OR9LZXtbS0RnycFg0igjzVUEEqTzlfQ4wfCOvaBrWkxx6lDq+lzTRyebp8Vk2YGU/PsjCqzB3kKjJPTk1pySnBN21FRpyjJ2nb0KfxQ+H0OleVpemWN1ofyyxtJc3UTyzPjodkm4L6BjyeK7KG7t/B8K+Gpp/wCxdMs4FMupfapLl5BkhiGyjmR03EoQMYABOK5uxmuE8N32sah4etYrSWFLixXUrpttwpUYQui8SAj0bhlwRzVnxlqWiN8IltNV0aG/v9bupLW1jhJZp52YlpGLPu4wp8zdhcKOehqMpte+9f69ToVL2adnp/XyL+g/E2PX/Hj6d4T0HSNYKLPcltRXb5tsqlTcTbGxGqBN7c5GBljnmtqPipNb8J2/hzQLmxhuLH7R/aWpSXAnW5gz8qwAgBXIz2wRtPB4rG0m6m8JaFfaDoHlR6l4gkeGRQqSRTRH955JfBdoVWIM4z1yD1rKbUbfXNPuYoooYfL1AtPcQWrQxTiQLwrtliq88dcEZpqEZap3uL2rte+hueH9RvpdPVZpILeZYBIpnY446Ngncy5z0Han+EdOi1hpbrxZqFjrZsi6u8C7y0ucomN23aOeDzgjFXPh74D0TWNQ1Mya1qWmrZ2kk1lLbW4uFu33cbmkOEHpkbRn1xVfwUbDQvBNsbOGy8tLhwLaCYedK4bGCcfMxIOX6ciuiKpqXoZclWaV3oaSeIrHUrq6sLeG4nmZRDOU/diJXzysgGGHGCD3NeaXWm3Ed9cR22oTeUkzKvlEFcZ9e9dtYeOb6ZDAdHWS6MkoIXHlxNtJUSEdduByPXNeY3WuaxfXEk63ViFMjYEc4jXrzgH3PWuWvFSnojtjUUafxanostrL4W0S51C1Ms8lq4xIdoPVQSfUkn9aZ4i8Sa5bfDmHxJrUki2+q6nIIYTsBKqY93lJGNqKOBljuO48YGaKKxpSc+VSd02b4iKpX5NNDs/CNp/wsXS7bVV0WzhtX1m4trK5A/0+8ZGJaInISJfMcJ3ztLZFFv8Aa5tJmv8AwxMsd3aTfZzBej7VGpLFWjXzc4yQCWBH3RzjIJRWlWnGT18wptqm2ux53b+HTqviW+1+602zjk1Nla90uK5ljtWCOgSQhT97KkjAOCTnNbGpfDfwZafEa3utOmv9XszCJrxWH2ezjudxLR28ZYyBVULy5OWBK4BxRRVYeUo2SZ5/s4ypty11/Ux9DsfCmr+PtDvH8DX1zY2NtM+qPcX6wq8x4jmCxyEu3ylgpGBvIPAzXrWpeI/h/o3hRb6LSPEa2oQC4t11CNBGNxQYKpuA5PAYnpn1oorDGc1avG7t6HTg+WjRdlf1v+jRxcPxc+GmnqYNJ+H+pXD2dv5J+0avIBGgJRFj+bHCHvjGawPB3xP8J3jXt7P4DkPmXA3ytqk0sik8biWYEZB6AnFFFbRwkZQs5St6s5q2NktVBfdf8z0HwrrVtqcbJpPg/TJPJYsscssqCMbgDvPmHcW9gcZre1e9i8GaOuqv4H0e2t5I5YIWW9uHaSR0ZHXZ5m1FKu2T2B46UUVxfVacnZ3+9/5nVTrNwV4rXyRjal4iu7l7fXG8F6cBLGqeS8pMZLr94/vDwAcAYyM/jTLLxheXlnOYvB+hwJDE4n8+MyDAPQZZuD9PrRRU1qEYWUW0vV9PmebicwrUZKMFH/wFf5FPxP4x8Qatomn2lr4Y0TT4Uc3KyW8UcatncqswVQxOVbuevT0yPCOtg332jUtE03X7JVaW5t72zja2jmUERzGIn5ipPAwecZoorqpUoxp6fm/1KjiqlWqr2XorCy6hb3V1d+HmY2k2o2itOIYgkHlyJlf3YyAApjwOgyeK6Hwb8PHma1nW7uPJeBQ0ksolbk/MG3ckEnO3px3oorOcmoHbQipSfkbPx++DWsaz4fW7tJWt9BsbeISW8MqplYUIyMknPPcHIHrg15H4k8O+GtK0WKTQvCT6vrezyrdrgRJBCmwDJBkG75iTyOwoorPC1pyvc1qU4yV/OxH4ZnXw7cQLfwXT3a25MrQzKJrYhQJEjbhcMGGc5+7xiuw1HwtcavfwJatHpFjZuubSKFDBcBl5kG0gqQMLgjsfXNFFehTqS9mpExw8HJ0+hj+dqSLfWOkLNcC8Xyot1yIV24IbIAzgkDj2rl/Ffi2XwvrVstrYxveWMH2WV7tAV8w8kDYc4Gcg/nRRWdGtOa1FiqMaekTz/wAaala3EUU9lrFxfapeQtPqcywGBRKW+4P7w298CuUW8JGRa+d6uzYJP50UV0RVonFJv2trn//Z", + "merchantDisplayName": "Custom Merchant Display Name", + "customEmailMessage": "Custom merchant email message", + "enableReminders": true, + "headerStyle": { + "fontColor": "#000001", + "backgroundColor": "#FFFFFF" + }, + "deliveryLanguage": "en-US", + "defaultCurrencyCode": "USD", + "payerAuthenticationInInvoicing": "enable" + } + } + } + } + }, + "get": { + "tags": [ + "invoiceSettings" + ], + "summary": "Get Invoice Settings", + "description": "Get the invoice settings for the invoice payment page.", + "operationId": "getInvoiceSettings", + "x-devcenter-metaData": { + "categoryTag": "Invoicing", + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-invoicing/Introduction.html" + }, + "consumes": [ + "application/json;charset=utf-8" + ], + "produces": [ + "application/json;charset=utf-8" + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "title": "invoicingV2InvoiceSettingsGet200Response", + "example": { + "submitTimeUtc": "2019-07-03T19:26:48Z", + "invoiceSettingsInformation": { + "merchantLogo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2/iaZubL73q21uwbKS79p3fdUDV1XpP58oSrDyoyA92LzvmT+z5LWwcnlo5O/mFLCb6JpQdJ41VMp2s630XIpKpVKj3yhTS0tlWr9Jj+3uNmme+uIXiTj35d8emwyc2IVP9BBc5PGq5O6cwsvLARLsEhdkYw5JbnwrOSqCclZQ/rzwZydNLYnDZcldeOLpN6CvCSE3+mqdN/LtW1/8p1fJc0N3QGb8v7kwhHJBWf25pV8cVJ/WVI/NambUKQYYiGCBe9ex9Fk02vdvx7Y0n2f+OCGZFhTcuaQZOTQ3/2aNu6jSeWVpPJaUnkjydHuy7MYmhTDkuLMpG5UUoxO6sYmdWOSYmRSnF6kaI670AULelTlWMQ6jia73njrf7qe9sEVisPxX+kbASBYAIIFCBaAYAEIFiBYAIIFIFiAYAEIFoBgAYIFIFgAggUIFoBgAQgWIFgAggUgWIBgAQgWgGABggUgWACCBQgWgGABggUgWACCBQgWgGABCBYgWACCBSBYgGABCBaAYAGCBSBYAIIFCBZA/2noqS806cCBomq/yyVtFasGJywAwQIQLECwAAQLQLAAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAug/RaXiM0YBJywAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAABAsQLADBAhAsQLAABAtAsADBAhAsAMECBAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAPrG/wDHqLt3n4mBDgAAAABJRU5ErkJgggiVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9kHGAsGCmSy5V4AAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAALiUlEQVR42u3df6zV9X3H8df3/uBy4Wrl1qsICJQfDqUNSWuYbWyNMZqiXTPppATpGu5Ekpm4qrRbdZ3BdS4U3RZam6gbtmlGFcW2pK0tMAdoXWew6IiVCshQoCoUKaKXX/ee/XFJOp0rCvfH+d7zeCT8Ry7nvt9fnudzLl/OKSqVSgDKoM4IAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECwAwQIQLECwAAQLQLAAwQIQLADBAgQLQLAA3q6hp77QppYWH3B4zKQDBwpTACcsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwgIGloZof3OysL+dUWzZ5M0P6zPoDk2rmDSOdsADBAhAsQLAABAtAsADBAhAsAMECBAtAsAAECxAsAMECECxAsAAEC0CwAMECECwAwQIEC0CwAAQLECyAXtdgBPSVoqhkcPOhDDv9tQwf8WpGjN6VUWN3ZcToXRk+8pWcfsZvclrr/jQP7Uh9fWc6O+vT8UZz9u09NXtefX9e3nlmdr04Ijv+e0R2vTgiL+86I6/tGZaDHU2pVAoDFiw4cc1DDmbM+BczZerGfPzSJ3LBRU++t+N/XVcaTzuSU0/bn9Hjdvze3/vztVPz2KqP5ZknP5TtW0en483BFjAQn/QqlUqPfKFNLS2Vnn5ws7Pehsr084X6rowZ91I+fukTuWrOwzlr1Mv99lh+vWN4Hrxveh5b9bFsf+HsdHUO3J9+rD8wqWaOl4LFyUWqrisTzn0hn575o8y85qGqfZz3//OfZMX9V2TLc+PS1TWw4iVYgsVxtLbtzeWfWZkv3HpX6R77Py24Lj9efln27m4VLMESrIHsnMlbMm/+v+SiTz5e+u9l7U8uzN13/Fmef3aCYAmWYA0kH/rIs/nrO76W8ZNeGHDf29ZN4/LV+V/KxqcmC5ZgCVa5T1Sbs2Dx32XieVsH/Pe6+Zfjc+v1t+T5ZycKVpVy4yjvqG34niy89ytZurq9JmKVJBPP25qlq9uz8N6vpG34HheBYFHt6hs6M6N9eR7ZcGUu+dSampzBJZ9ak0c2XJkZ7ctT39DpovCS0EvCavSBidtz9/Lr09q21zCO2bu7NfM+szjbNo/xktAJi6p41ioqmdG+PA+umy1Wb9PatjcPrpudGe3LUxQVA3HCcsLqT6eetj933HdzPnzBM4ZxHL/4+ZTMn3N79u871QnLCYu+ds7kLXn0uSvE6l368AXP5NHnrsg5k7cYhmDRly6eti5LV88xiBOwdPWcXDxtnUEIFn1h1txlWbTkFoM4CYuW3JJZc5cZhGDRm6778j258bavG0QPuPG2r+e6L99jEH3I+2HViKKo5KbbFlf1OyqU0Zzrv5PmIR2582+u9yaCTlj0lBsWfEOsesnMax7KDQu+YRCCRU+49qb7/Lyll82auyzX3nSfQQgWJ2P67BW5dv4Sg+iLJ4b5SzJ99gqDECxOxNRPrM/NixYZRB+6edGiTP2EG54Fi/dk1Nid+eYDNxhEP/jmAzdk1NidBtELqvq/5pTVpAMH+vmfiw4mr0+oJIcso980JadsKRKf3uOExXF69Zdi1e8OHdsDgsX/7+jKSo4sNYdqcGRp9z4QLN5BZe+16bjaHKpJx9Xde0Gw+D8vBe82BHsRLKpf539WcvT75lCVL9O/370fBIskOZq8Od0Yqtmb07v3hGDVvCMPV5LD5lDVDh/bEyfDfVi9oG/vwzqYvH622ZfFKS+5N8sJq5ZPV8vEyr6csJywynDCOpy8PtLcS3fK2lkkg8zBCavGuCnR3gSL0jh4kxnYm2BRAl2/qqTiQ09LqbK3e38IVs047E357E+wKMfVnhxxwZfakSVx75xg1YbOZ7ycsEfBoizPzg+YgT0KFmXQlRz5tjEMiGB9u3ufCNbA7dVOLyPsU7AoywXuE1nsU7Aoi6M/MQP7FCxK4sjDZmCfgkUJVN4wA3sVLMpyYb/qB7T2KliURNd2M7BXwaIsz8RbzcBeBYuyPBO7sO1VsCjNhb3NDOxVsCjLhb3TDOxVsCiJym4zsFfBoiwX9n4zsFfBoix8crC9Chal0WAE9ipYlERxqhnYq2BRlgu7zQzsVbAoy7ZGmoG9ChZl2dYHzMBeBYuybGu8GdirYFEShQvbXgWL0mxrjBnYq2BRlmfiMwpDsFfBoiQX9lAzsFfBokQap5uBfQoWJdHwSTOwT8GiLBs73wzsU7Aoy8ZG+gGtfQoWJVpZ4+eNYSBo/Ly/goJVCxf6Z83AHgWLkqif4mWEPQoWZTEoaWw3hlKfrtq794hg1UazBMv+BIvSbO4PihSt5lBGRWv3/hCsmjL4TjOwN8GiJBou8yxtb7U1ulr4Jj+3uLlv/8AlbZW++qOuHJfc/BEXcrlOV37Y7oRVo3683QxKpXGG05Vg1a5DncmtT5pDOU5XdyUZbA6CVdt++mJypMscqtugpHG605Vg0VlJ/nytOVS1IQ/HJzwLFsc8vSdZ9ZI5VKWGP07q/9DpSrD43xb+wgyq0uCF8wxBsHib3x5ObnzcHKpK878mRes9BiFYvIPHfp2s2GYOVaFxlptEBYvj+dqG5HCnOfSvpmTwQrESLI7nUGfy2ZXm0K+GPh73XAkW79KOA8l168yhXwx5KKkb63QlWLwXT76S3P6UOfSpwXcm9ReJlWBxIr73QnLPs+bQJ5q+lDT+qVgJFifj3l8m391sDr1q0Lxk0BfFSrDoCf/4dHK/aPVSrOYmTX8rVoJFT6kkufPp5FubzKJnY/WFpOn2ItErwaLH3bUx+YenzaFHNH01abpFqQSL3vTdzckXnzCHk9L8rWTQPLESLPrCmp3JrFXmcEKGrkkarhArwaIvbd6XXPKDZMNus3hX6j+atDx/aeomi5Vg0R/2H07mrUkWbTCL36vp75MhPyhSDFttGIJFP6okWbYlmfHTZO9B83iLoi0Z+rNk0DX+JVCwqCbb9ieX/9Bp6y2nqpb/KlJ3jlIJFtWos9J92rr8h8m/7ajRITT8UdKy8dipyvuwCxZVb3dH8lf/kVy9Ktn821r523BeMvTfk+YlRYrhTlWCRdk8vy+ZtTJpfzTZOlDDVXduMuSRZOjaInUfFCrBouw2", + "merchantDisplayName": "string", + "customEmailMessage": "string", + "enableReminders": true, + "headerStyle": { + "fontColor": "#000001", + "backgroundColor": "#FFFFFF" + }, + "deliveryLanguage": "en-US", + "defaultCurrencyCode": "USD", + "payerAuthentication3DSVersion": "1" + } + }, + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "invoiceSettingsInformation": { + "type": "object", + "properties": { + "merchantLogo": { + "description": "The image file, which must be encoded in Base64 format. Supported file formats are `png`, `jpg`, and `gif`. The image file size restriction is 1 MB.", + "type": "string", + "maxLength": 10000000 + }, + "merchantDisplayName": { + "description": "The merchant's display name shown on the invoice.", + "type": "string", + "maxLength": 100 + }, + "customEmailMessage": { + "description": "The content of the email message that we send to your customers.", + "type": "string", + "maxLength": 2000 + }, + "enableReminders": { + "description": "Whether you would like us to send an auto-generated reminder email to your invoice recipients. Currently, this reminder email is sent five days before the invoice is due and one day after it is past due.", + "type": "boolean" + }, + "headerStyle": { + "type": "object", + "properties": { + "fontColor": { + "description": "The invoice font color. The format is a valid hexadecimal code prefixed with `#`, such as `#000000` for black.", + "type": "string", + "maxLength": 7, + "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" + }, + "backgroundColor": { + "description": "The invoice background color. The format is a valid hexadecimal code prefixed with `#`, such as `#ffffff` for white.", + "type": "string", + "maxLength": 7, + "pattern": "^#(?:[0-9a-fA-F]{3}){1,2}$" + } + } + }, + "deliveryLanguage": { + "description": "The language of the email that we send to your customers. Possible values are `zh-CN`, `zh-TW`, `en-US`, `fr-FR`, `de-DE`, `ja-JP`, `pt-BR`, `ru-RU` and `es-419`.", + "type": "string", + "maxLength": 6 + }, + "defaultCurrencyCode": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + }, + "payerAuthentication3DSVersion": { + "description": "The 3D Secure payer authentication version or status for a merchant's invoice payments. Possible values are:\n- `1`\n- `2`\n- `None`\n- `Disabled`\n", + "type": "string", + "maxLength": 8 + } + } + } + }, + "type": "object" + } + }, + "400": { + "description": "Could not get the invoice settings for this merchant.", + "schema": { + "title": "invoicingV2InvoiceSettingsGet400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the invoice.\n\nPossible values:\n - BADREQUEST\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": { + "submitTimeUtc": "2019-07-01T21:40:10Z", + "status": "BADREQUEST", + "reason": "VALIDATION_ERROR", + "message": "Field validation errors.", + "details": [ + { + "field": "customerInformation.email", + "reason": "Invalid email" + } + ] + } + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "title": "invoicingV2InvoiceSettingsGet502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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": { + "submitTimeUtc": "2018-06-12T09:27:20.000Z", + "status": "SERVER_ERROR", + "reason": "SERVER_ERROR", + "message": "Error - General system failure." + } + } + } + } + } + }, + "/ums/v1/users": { + "get": { + "deprecated": true, + "summary": "Get User Information - Deprecated", + "description": "This endpoint is deprecated. Please use the search end point.", + "tags": [ + "UserManagement" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "operationId": "getUsers", + "x-devcenter-metaData": { + "categoryTag": "User_Management", + "isClientSideApi": true + }, + "x-queryParameterDefaults": { + "organizationId": "testrest", + "permissionId": "CustomerProfileViewPermission" + }, + "parameters": [ + { + "in": "query", + "name": "organizationId", + "type": "string", + "description": "This is the orgId of the organization which the user belongs to." + }, + { + "in": "query", + "name": "userName", + "type": "string", + "description": "User ID of the user you want to get details on." + }, + { + "in": "query", + "name": "permissionId", + "type": "string", + "description": "permission that you are trying to search user on." + }, + { + "in": "query", + "name": "roleId", + "type": "string", + "description": "role of the user you are trying to search on." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "object", + "title": "umsV1UsersGet200Response", + "properties": { + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "accountInformation": { + "type": "object", + "properties": { + "userName": { + "type": "string" + }, + "roleId": { + "type": "string" + }, + "permissions": { + "type": "array", + "items": { + "type": "string", + "description": "array of permissions" + } + }, + "status": { + "type": "string", + "description": "Valid values:\n- active\n- inactive\n- locked\n- disabled\n- forgotpassword\n- deleted\n" + }, + "createdTime": { + "type": "string", + "format": "date-time" + }, + "lastAccessTime": { + "type": "string", + "format": "date-time" + }, + "languagePreference": { + "type": "string" + }, + "timezone": { + "type": "string" + } + } + }, + "organizationInformation": { + "type": "object", + "properties": { + "organizationId": { + "type": "string" + } + } + }, + "contactInformation": { + "type": "object", + "properties": { + "email": { + "type": "string" + }, + "phoneNumber": { + "type": "string" + }, + "firstName": { + "type": "string" + }, + "lastName": { + "type": "string" + } + } + }, + "customFields": { + "additionalProperties": { + "type": "string" + } + } + } + } + } + }, + "example": { + "users": [ + { + "accountInformation": { + "userName": "auto_nonmember", + "roleId": "admin", + "permissions": [ + "ReportViewPermission", + "ReportGeneratePermission" + ], + "status": "active", + "createdTime": "2018-06-14T19:45:52.093Z", + "lastAccessTime": "2018-06-14T19:45:52.093Z", + "languagePreference": "en-US", + "timezone": "America/Los_Angeles" + }, + "organizationInformation": { + "organizationId": "auto_nonmember" + }, + "contactInformation": { + "email": "auto_nonmember@exchange.com", + "phoneNumber": "4445551234", + "firstName": "Zeta", + "lastName": "DMH" + }, + "customFields": { + "employeeId": "12344", + "employeeName": "John Doe", + "employeeDesignation": "abc", + "zone": "NA", + "department": "map" + } + } + ] + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "umsV1UsersGet400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" + }, + "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" + } + } + } + } + } + } + }, + "500": { + "description": "Unexpected server error." + } + } + } + }, + "/ums/v1/users/search": { + "post": { + "summary": "Search User Information", + "description": "This endpoint is to get all the user information depending on the filter criteria passed in request body.", + "tags": [ + "UserManagementSearch" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/hal+json;charset=utf-8" + ], + "operationId": "searchUsers", + "x-devcenter-metaData": { + "categoryTag": "User_Management", + "isClientSideApi": true, + "developerGuides": "https://developer.cybersource.com/api/developer-guides/dita-user-management-api-102718/user_management_api_intro.html" + }, + "parameters": [ + { + "in": "body", + "name": "SearchRequest", + "required": true, + "schema": { + "type": "object", + "properties": { + "organizationId": { + "type": "string", + "description": "This is the orgId of the organization which the user belongs to.", + "example": "merchantId" + }, + "userName": { + "type": "string", + "description": "User ID of the user you want to get details on.", + "example": "userName" + }, + "roleId": { + "type": "string", + "description": "role of the user you are trying to search on.", + "example": "custom" + }, + "permissionId": { + "type": "string", + "description": "permission that you are trying to search user on.", + "example": "CustomerProfileViewPermission" + } + }, + "example": { + "organizationId": "merchantId", + "userName": "userName", + "role": "custom", + "permissionId": "CustomerProfileViewPermission" + } + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "object", + "title": "umsV1UsersGet200Response", + "properties": { + "users": { + "type": "array", + "items": { + "type": "object", + "properties": { + "accountInformation": { + "type": "object", + "properties": { + "userName": { + "type": "string" + }, + "roleId": { + "type": "string" + }, + "permissions": { + "type": "array", + "items": { + "type": "string", + "description": "array of permissions" + } + }, + "status": { + "type": "string", + "description": "Valid values:\n- active\n- inactive\n- locked\n- disabled\n- forgotpassword\n- deleted\n" + }, + "createdTime": { + "type": "string", + "format": "date-time" + }, + "lastAccessTime": { + "type": "string", + "format": "date-time" + }, + "languagePreference": { + "type": "string" + }, + "timezone": { + "type": "string" + } + } + }, + "organizationInformation": { + "type": "object", + "properties": { + "organizationId": { + "type": "string" + } + } + }, + "contactInformation": { + "type": "object", + "properties": { + "email": { + "type": "string" + }, + "phoneNumber": { + "type": "string" + }, + "firstName": { + "type": "string" + }, + "lastName": { + "type": "string" + } + } + }, + "customFields": { + "additionalProperties": { + "type": "string" + } + } + } + } + } + }, + "example": { + "users": [ + { + "accountInformation": { + "userName": "auto_nonmember", + "roleId": "admin", + "permissions": [ + "ReportViewPermission", + "ReportGeneratePermission" + ], + "status": "active", + "createdTime": "2018-06-14T19:45:52.093Z", + "lastAccessTime": "2018-06-14T19:45:52.093Z", + "languagePreference": "en-US", + "timezone": "America/Los_Angeles" + }, + "organizationInformation": { + "organizationId": "auto_nonmember" + }, + "contactInformation": { + "email": "auto_nonmember@exchange.com", + "phoneNumber": "4445551234", + "firstName": "Zeta", + "lastName": "DMH" + }, + "customFields": { + "employeeId": "12344", + "employeeName": "John Doe", + "employeeDesignation": "abc", + "zone": "NA", + "department": "map" + } + } + ] + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "umsV1UsersGet400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - INVALID_REQUEST\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n - DUPLICATE_REQUEST\n - INVALID_CARD\n - INVALID_MERCHANT_CONFIGURATION\n - INVALID_AMOUNT\n - CAPTURE_ALREADY_VOIDED\n - ACCOUNT_NOT_ALLOWED_CREDIT\n" + }, + "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" + } + } + } + } + } + } + }, + "500": { + "description": "Unexpected server error." + } + } + } + }, + "/vas/v2/tax": { + "post": { + "summary": "Calculate Taxes", + "description": "Get tax details for a transaction.\n", + "operationId": "calculateTax", + "x-devcenter-metaData": { + "categoryTag": "Value_Added_Service" + }, + "tags": [ + "taxes" + ], + "parameters": [ + { + "name": "taxRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + }, + "comments": { + "type": "string", + "description": "Comments" + } + } + }, + "taxInformation": { + "type": "object", + "properties": { + "reportingDate": { + "type": "string", + "maxLength": 8, + "description": "Reporting date of transaction. Format: YYYYMMDD. Defaults to current date if not specified.\nAlso the default tax calculation date unless a different date is specified in `orderInformation.invoiceDetails.invoiceDate`.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "dateOverrideReason": { + "type": "string", + "maxLength": 50, + "description": "If a past or future date is specified in `orderInformation.invoiceDetails.invoiceDate`, then provide the reason for that for audit purposes.\nTypical reasons include: 'Return', 'Layaway', 'Imported'.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "nexus": { + "description": "Comma-separated list of states or provinces in which merchandise is taxable. Note merchandise may be still be non-taxable or tax exempt depending on the product taxability. Indicate the type of product you are selling in the product code field for product-level taxability rules to be applied. Do not use both the `taxInformation.nexus` and `taxInformation.noNexus` fields in your request. If you do not include this field in a tax calculation service request, the tax system makes its calculations as if you have nexus in every US state or Canadian province. 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).\n\nIf you indicate you do not have nexus in the destination state, jurisdiction level fields are left blank in the Tax Detail Report.\n\nOptional field for U.S. and Canadian taxes only. Either this field or `taxInformation.noNexus` is required if you do not have nexus in every state or province.\n\nNot applicable for international and value added taxes.\n", + "type": "array", + "items": { + "type": "string", + "maxLength": 2 + } + }, + "noNexus": { + "description": "Comma-separated list of states or provinces where you do not have nexus. Check with a tax advisor to determine where your business has nexus. Do not use both the `taxInformation.nexus` and `taxInformation.noNexus` fields in your request. If you do not include this field in a tax calculation service request, the tax system makes its calculations as if you have nexus in every US state or Canadian province.\nUse the [State, Province, and Territory Codes for the United States and Canada](https://developer.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\nIf you indicate you do not have nexus in the destination state, jurisdiction level fields are left blank in the Tax Detail Report.\n\nOptional field for U.S. and Canadian taxes only. Either this field or `taxInformation.nexus` is required if you do not have nexus in every state or province.\n\nNot applicable for international and value added taxes.\n", + "type": "array", + "items": { + "type": "string", + "maxLength": 2 + } + }, + "showTaxPerLineItem": { + "type": "string", + "description": "Whether or not to display tax amounts for each line item. This field can contain one of the following values:\n- `Yes` - Display tax amounts for each line item\n- `No` (default) - Do not display tax amounts for each line item\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "commitIndicator": { + "type": "boolean", + "description": "Indicates whether this is a committed tax transaction. For a committed tax transaction, the status in the Tax Detail Report is \u201cCommitted.\u201d For an uncommitted tax transaction, the status in the Tax Detail Report is \u201cUncommitted.\u201d Possible values:\n- `true`: This is a committed tax transaction.\n- `false` (default): This is not a committed tax transaction.\n\nA committed tax request is a tax service request that sets the status field in the Tax Detail Report to committed.\nThe committed status indicates that the amount calculated by the tax service is included in the amount of a capture or credit.\n\nUse a void service request to cancels a committed tax request or a committed refund tax request. The void transaction is included as a separate entry in the Tax Detail Report. The value of the status field is cancelled. The value of the link ID is the request ID of the committed tax request or refund tax request that was voided. You can use the value of the link ID to reconcile your orders.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "refundIndicator": { + "type": "boolean", + "description": "Indicates whether this is a refund tax transaction. For a refund tax transaction, amounts in the Tax Detail Report will be negative.\nPossible values:\n- `true`: This is a refund tax transaction.\n- `false` (default): This is not a refund tax transaction.\n\nA refund tax request is a tax service request that sets the transaction type field in the Tax Detail Report to refunded and makes the reported amount negative.\nTax amounts are returned as positive amounts in reply messages, but they are saved in reports as negative amounts which enables the reporting software to accurately calculate the aggregate amounts.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "amountDetails": { + "type": "object", + "properties": { + "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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + }, + "billTo": { + "type": "object", + "properties": { + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the billing street address.\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the billing street address.\n\n#### Tax Calculation\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "Credit card billing city.\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes only. Not applicable to international and value added taxes.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "Credit card billing state or province.\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the billing address. The postal code must consist of 5 to 9 digits.\nIf the billing country is the U.S., the 9-digit postal code must follow this format:\n\n[5 digits][dash][4 digits]\n\n**Example**: 12345-6789\n\nIf the billing country is Canada, the 6-digit postal code must follow this format:\n\n[alpha][numeric][alpha] [numeric][alpha][numeric]\n\n**Example**: A1B 2C3\n\n#### Tax Calculation\nRequired for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Credit card billing country. Use the [ISO Standard Country Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\nIf `orderInformation.shipTo.country` is not provided, `orderInformation.billTo.country` is used in its place. If `orderInformation.billTo.country` is set to `US` or `CA`, then `orderInformation.billTo.postalCode` and `orderInformation.billTo.administrativeArea` are also required.\n\n#### Tax Calculation\nRequired for U.S., Canadian, international and value added taxes.\n" + } + } + }, + "shippingDetails": { + "type": "object", + "properties": { + "shipFromLocality": { + "type": "string", + "maxLength": 50, + "description": "City where the product is shipped from.\nThis field is used only when the `orderInformation.shipTo.administrativeArea` and `orderInformation.shipTo.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "shipFromCountry": { + "type": "string", + "maxLength": 2, + "description": "Country from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromAdministrativeArea` are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/ or rates applied to the transaction based on sourcing.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code where the product is shipped from.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "shipFromAdministrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromCountry` are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + } + } + }, + "shipTo": { + "type": "object", + "properties": { + "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)\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n", + "maxLength": 2 + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "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)\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S.\nor Canada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "locality": { + "type": "string", + "maxLength": 50, + "description": "City of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request and shipping to the U.S. or\nCanada; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code for the shipping address. The postal code must consist of 5 to 9 digits.\n\nRequired field for authorization if any shipping address information is included in the request and\nshipping to the U.S. or Canada; otherwise, optional.\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\nExample 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\nExample A1B 2C3\n\n#### American Express Direct\nBefore sending the postal code to the processor, all nonalphanumeric characters are removed and, if the\nremaining value is longer than nine characters, the value is truncated starting from the right side.\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address1": { + "type": "string", + "maxLength": 60, + "description": "First line of the shipping address.\n\nRequired field for authorization if any shipping address information is included in the request; otherwise, optional.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address2": { + "type": "string", + "maxLength": 60, + "description": "Second line of the shipping address.\n\nOptional field.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + }, + "address3": { + "type": "string", + "maxLength": 60, + "description": "Third line of the shipping address.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nBilling address objects will be used to determine the cardholder\u2019s location when shipTo objects are not present.\n" + } + } + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "productSKU": { + "type": "string", + "maxLength": 255, + "description": "Product identifier code. Also known as the Stock Keeping Unit (SKU) code for the product.\n\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is required when `orderInformation.lineItems[].productCode` is not set to **default** or one of the other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nFor an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`), this field is\nrequired when `orderInformation.lineItems[].productCode` is not `default` or one of the values related to shipping and/or handling.\n" + }, + "productCode": { + "type": "string", + "maxLength": 255, + "description": "Type of product. The value for this field is used to identify the product category (electronic, handling, physical,\nservice, or shipping). The default value is `default`.\n\nIf you are performing an authorization transaction (`processingOptions.capture` is set to `false`), and you set\nthis field to a value other than `default` or one of the values related to shipping and/or handling, then\n`orderInformation.lineItems[].quantity`, `orderInformation.lineItems[].productName`, and\n`orderInformation.lineItems[].productSku` fields are required.\n\nOptional field.\n\nFor details, see the `product_code` field description in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nTo use the tax calculation service, use values listed in the Tax Product Code Guide. For information about this\ndocument, contact customer support. See \"Product Codes,\" page 14, for more information.\n" + }, + "quantity": { + "type": "integer", + "minimum": 1, + "maximum": 999999999, + "default": 1, + "description": "Number of units for this order. Must be a non-negative integer.\n\nThe default is `1`. For an authorization or capture transaction (`processingOptions.capture` is set to `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of the other values\nrelated to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "productName": { + "type": "string", + "maxLength": 255, + "description": "For an authorization or capture transaction (`processingOptions.capture` is `true` or `false`),\nthis field is required when `orderInformation.lineItems[].productCode` is not `default` or one of\nthe other values that are related to shipping and/or handling.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + }, + "unitPrice": { + "type": "string", + "maxLength": 15, + "description": "Per-item price of the product. This value for this field cannot be negative.\n\nYou must include either this field or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\nYou can include a decimal point (.), but you cannot include any other special characters.\nThe value is truncated to the correct number of decimal places.\n\n#### DCC with a Third-Party Provider\nSet this field to the converted amount that was returned by the DCC provider. You must include either\nthe 1st line item in the order and this field, or the request-level field `orderInformation.amountDetails.totalAmount` in your request.\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in the [Merchant Descriptors Using the SCMP API Guide.]\n(https://apps.cybersource.com/library/documentation/dev_guides/Merchant_Descriptors_SCMP_API/html/)\n\n#### Tax Calculation\nRequired field for U.S., Canadian, international and value added taxes.\n\n#### Zero Amount Authorizations\nIf your processor supports zero amount authorizations, you can set this field to 0 for the\nauthorization to check if the card is lost or stolen.\n\n#### Maximum Field Lengths\nFor GPN and JCN Gateway: Decimal (10)\nAll other processors: Decimal (15)\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax to apply to the product. This value cannot be negative. The tax amount and the offer amount must\nbe in the same currency. The tax amount field is additive.\n\nThe following example uses a two-exponent currency such as USD:\n\n 1. You include each line item in your request.\n ..- 1st line item has amount=10.00, quantity=1, and taxAmount=0.80\n ..- 2nd line item has amount=20.00, quantity=1, and taxAmount=1.60\n 2. The total amount authorized will be 32.40, not 30.00 with 2.40 of tax included.\n\nOptional field.\n\n#### Airlines processing\nTax portion of the order amount. This value cannot exceed 99999999999999 (fourteen 9s).\nFormat: English characters only.\nOptional request field for a line item.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n\nNote if you send this field in your tax request, the value in the field will override the tax engine\n" + }, + "orderAcceptance": { + "type": "object", + "description": "The place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.", + "properties": { + "locality": { + "type": "string", + "maxLength": 50, + "description": "Order acceptance city. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "Order acceptance state. This field is not used unless the `orderInformation.orderAcceptance.locality` and `orderInformation.orderAcceptance.country` fields are present. 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).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Order acceptance postal code. This field is not used unless the `orderInformation.orderAcceptance.locality`, `orderInformation.orderAcceptance.administrativeArea`, and `orderInformation.orderAcceptance.country` fields are present.\nMust be sent at the line or offer level to be surfaced in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Order acceptance country. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.locality` fields are present. Use the [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + } + } + }, + "orderOrigin": { + "type": "object", + "description": "The location of the buyer at the time of placing the order.", + "properties": { + "locality": { + "type": "string", + "maxLength": 50, + "description": "Order origin city. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "Order origin state. This field is not used unless the `orderInformation.orderOrigin.locality` and `orderInformation.orderOrigin.country` fields are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Order origin postal code. This field is not used unless the `orderInformation.orderOrigin.locality`, `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\nMust be sent at the lineItem level to appear in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Order origin country. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.locality` fields are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + } + } + }, + "shipFromCountry": { + "type": "string", + "maxLength": 2, + "description": "Country from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromAdministrativeArea` are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/ or rates applied to the transaction based on sourcing.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "shipFromAdministrativeArea": { + "type": "string", + "maxLength": 2, + "description": "State from which the order is shipped. This field is used only when `orderInformation.shippingDetails.shipFromLocality` and `orderInformation.shippingDetails.shipFromCountry` are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "shipFromLocality": { + "type": "string", + "maxLength": 50, + "description": "City where the product is shipped from.\nThis field is used only when the `orderInformation.shipTo.administrativeArea` and `orderInformation.shipTo.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "shipFromPostalCode": { + "type": "string", + "maxLength": 10, + "description": "Postal code where the product is shipped from.\n\n#### Tax Calculation\nThis field is used to determine tax rules and/or rates applied to the transaction based on sourcing.\n\nOptional for U.S. and Canadian taxes. Not applicable to international and value added taxes.\n" + }, + "buyerVatRegistrationNumber": { + "type": "string", + "maxLength": 25, + "description": "Buyer\u2019s VAT registration number.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n" + }, + "sellerVatRegistrationNumber": { + "type": "string", + "maxLength": 25, + "description": "VAT seller registration number.\n\nFor details, see \"International Taxes and Value-Added Tax (VAT)\" in [Tax Calculation Service Using the SCMP API](https://apps.cybersource.com/library/documentation/dev_guides/Tax_SCMP_API/html/).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n" + } + } + } + }, + "invoiceDetails": { + "type": "object", + "properties": { + "invoiceDate": { + "type": "string", + "maxLength": 8, + "description": "Date of the tax calculation. Use format YYYYMMDD. You can provide a date in the past if you are calculating tax for a refund and want to know what the tax was on the date the order was placed.\nYou can provide a date in the future if you are calculating the tax for a future date, such as an upcoming tax holiday.\n\nThe default is the date, in Pacific time, that the bank receives the request.\nKeep this in mind if you are in a different time zone and want the tax calculated with the rates that are applicable on a specific date.\n\n#### Tax Calculation\nOptional field for U.S., Canadian, international tax, and value added taxes.\n" + } + } + }, + "orderAcceptance": { + "type": "object", + "description": "The place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.", + "properties": { + "locality": { + "type": "string", + "maxLength": 50, + "description": "Order acceptance city. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "Order acceptance state. This field is not used unless the `orderInformation.orderAcceptance.locality` and `orderInformation.orderAcceptance.country` fields are present. 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).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Order acceptance postal code. This field is not used unless the `orderInformation.orderAcceptance.locality`, `orderInformation.orderAcceptance.administrativeArea`, and `orderInformation.orderAcceptance.country` fields are present.\nMust be sent at the line or offer level to be surfaced in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Order acceptance country. This field is not used unless the `orderInformation.orderAcceptance.administrativeArea` and `orderInformation.orderAcceptance.locality` fields are present. Use the [ISO Standard Country Codes.](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf)\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe place of business where you accept/approve the customer\u2019s order, thereby becoming contractually obligated to make the sale.\n" + } + } + }, + "orderOrigin": { + "type": "object", + "description": "The location of the buyer at the time of placing the order.", + "properties": { + "locality": { + "type": "string", + "maxLength": 50, + "description": "Order origin city. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + }, + "administrativeArea": { + "type": "string", + "maxLength": 2, + "description": "Order origin state. This field is not used unless the `orderInformation.orderOrigin.locality` and `orderInformation.orderOrigin.country` fields are present. Use the [State, Province, and Territory Codes for the United States and Canada](http://apps.cybersource.com/library/documentation/sbc/quickref/states_and_provinces.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + }, + "postalCode": { + "type": "string", + "maxLength": 10, + "description": "Order origin postal code. This field is not used unless the `orderInformation.orderOrigin.locality`, `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.country` fields are present.\nMust be sent at the lineItem level to appear in the Tax Detail Report.\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + }, + "country": { + "type": "string", + "maxLength": 2, + "description": "Order origin country. This field is not used unless the `orderInformation.orderOrigin.administrativeArea` and `orderInformation.orderOrigin.locality` fields are present. Use the [ISO Standard Country Codes](http://apps.cybersource.com/library/documentation/sbc/quickref/countries_alpha_list.pdf).\n\n**NOTE** If this field appears in a `lineItems` object, then the value of this field in the `lineItems` object overrides the value of the corresponding field at the request-level or order-level object.\n\n#### Tax Calculation\nOptional field for U.S. and Canadian taxes. Not applicable to international and value added taxes.\nThe location of the buyer at the time of placing the order.\n" + } + } + } + } + }, + "merchantInformation": { + "type": "object", + "properties": { + "vatRegistrationNumber": { + "type": "string", + "maxLength": 21, + "description": "Your government-assigned tax identification number.\n\n#### Tax Calculation\nRequired field for value added tax only. Not applicable to U.S. and Canadian taxes.\n\n#### CyberSource through VisaNet\nFor CtV processors, the maximum length is 20.\n\nFor other processor-specific information, see the `merchant_vat_registration_number` field description in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + } + } + }, + "buyerInformation": { + "type": "object", + "properties": { + "vatRegistrationNumber": { + "type": "string", + "maxLength": 20, + "description": "Customer\u2019s government-assigned tax identification number.\n\n#### Tax Calculation\nOptional for international and value added taxes only. Not applicable to U.S. and Canadian taxes.\n\nFor processor-specific information, see the purchaser_vat_registration_number field in\n[Level II and Level III Processing Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/Level_2_3_SCMP_API/html)\n" + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "vasV2PaymentsPost201Response", + "type": "object", + "properties": { + "_links": { + "type": "object", + "properties": { + "void": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "This is the endpoint of the resource that was created by the successful request." + }, + "method": { + "type": "string", + "description": "`method` refers to the HTTP method that you can send to the `self` endpoint to retrieve details of the resource." + } + } + } + } + }, + "id": { + "type": "string", + "maxLength": 26, + "description": "An unique identification number generated by Cybersource to identify the submitted request. Returned by all services.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - COMPLETED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "submitLocalDateTime": { + "type": "string", + "maxLength": 14, + "description": "Date and time at your physical location.\n\nFormat: `YYYYMMDDhhmmss`, where YYYY = year, MM = month, DD = day, hh = hour, mm = minutes ss = seconds\n\n#### PIN Debit\nOptional field for PIN Debit purchase and credit requests.\n" + }, + "ownerMerchantId": { + "type": "string", + "description": "Merchant ID that was used to create the subscription or customer profile for which the service was requested.\n\nIf your CyberSource account is enabled for Recurring Billing, this field is returned only if you are using\nsubscription sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n\nIf your CyberSource account is enabled for Payment Tokenization, this field is returned only if you are using\nprofile sharing and if your merchant ID is in the same merchant ID pool as the owner merchant ID.\n" + } + } + }, + "taxInformation": { + "type": "object", + "properties": { + "commitIndicator": { + "type": "boolean", + "description": "Indicates whether this is a committed tax transaction. For a committed tax transaction, the status in the Tax Detail Report is \u201cCommitted.\u201d For an uncommitted tax transaction, the status in the Tax Detail Report is \u201cUncommitted.\u201d Possible values:\n- `true`: This is a committed tax transaction.\n- `false` (default): This is not a committed tax transaction.\n\nA committed tax request is a tax service request that sets the status field in the Tax Detail Report to committed.\nThe committed status indicates that the amount calculated by the tax service is included in the amount of a capture or credit.\n\nUse a void service request to cancels a committed tax request or a committed refund tax request. The void transaction is included as a separate entry in the Tax Detail Report. The value of the status field is cancelled. The value of the link ID is the request ID of the committed tax request or refund tax request that was voided. You can use the value of the link ID to reconcile your orders.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + }, + "refundIndicator": { + "type": "boolean", + "description": "Indicates whether this is a refund tax transaction. For a refund tax transaction, amounts in the Tax Detail Report will be negative.\nPossible values:\n- `true`: This is a refund tax transaction.\n- `false` (default): This is not a refund tax transaction.\n\nA refund tax request is a tax service request that sets the transaction type field in the Tax Detail Report to refunded and makes the reported amount negative.\nTax amounts are returned as positive amounts in reply messages, but they are saved in reports as negative amounts which enables the reporting software to accurately calculate the aggregate amounts.\n\nOptional for U.S., Canadian, international tax, and value added taxes.\n" + } + } + }, + "orderInformation": { + "type": "object", + "properties": { + "exemptAmount": { + "type": "string", + "maxLength": 15, + "description": "Total amount of tax exempt amounts. This value is the sum of the values for all the `orderInformation.lineItems[].exemptAmount` fields in the tax calculation request.\n" + }, + "taxableAmount": { + "type": "string", + "maxLength": 15, + "description": "Total amount of all taxable amounts. This value is the sum of the values for all the `orderInformation.lineItems[].taxAmount` fields in the tax calculation request.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total amount of tax for all lineItems in the tax calculation request.\n" + }, + "lineItems": { + "type": "array", + "items": { + "type": "object", + "properties": { + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 15, + "description": "Allowed tax types:\n- city\n- county\n- state\n- national\n- special\n" + }, + "amount": { + "type": "string", + "maxLength": 15, + "description": "Amount corresponding to different types of taxes applied.\n" + } + } + } + }, + "jurisdiction": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 15, + "description": "Type of tax jurisdiction for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n\nPossible values:\n- `city`\n- `county`\n- `state`\n- `country`\n- `special`\n" + }, + "taxName": { + "type": "string", + "maxLength": 15, + "description": "Name of the jurisdiction tax for the item. For example, CA State Tax. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Jurisdiction tax amount for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "taxable": { + "type": "string", + "maxLength": 15, + "description": "Jurisdiction taxable amount for the item, not including product level exemptions. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "name": { + "type": "string", + "maxLength": 15, + "description": "Free-text description of the jurisdiction for the item. For example, San Mateo County. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "code": { + "type": "string", + "maxLength": 15, + "description": "Jurisdiction code assigned by the tax provider. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "rate": { + "type": "string", + "maxLength": 15, + "description": "Jurisdiction tax rate for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "region": { + "type": "string", + "maxLength": 15, + "description": "Free-text description of the jurisdiction region for the item. For example, CA (California State) or GB (Great Britain). Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "country": { + "type": "string", + "maxLength": 15, + "description": "Tax jurisdiction country for the item. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + } + } + } + }, + "exemptAmount": { + "type": "string", + "maxLength": 15, + "description": "Exempt amount for the lineItem. Returned only if the `taxInformation.showTaxPerLineItem` field is set to `Yes`.\n" + }, + "taxableAmount": { + "type": "string", + "maxLength": 15, + "description": "Portion of the item amount that is taxable.\n" + }, + "taxAmount": { + "type": "string", + "maxLength": 15, + "description": "Total tax for the item. This value is the sum of all taxes applied to the item.\n" + } + } + } + }, + "taxDetails": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "maxLength": 15, + "description": "Allowed tax types:\n- city\n- county\n- state\n- national\n- special\n" + }, + "amount": { + "type": "string", + "maxLength": 15, + "description": "Amount corresponding to different types of taxes applied.\n" + } + } + } + }, + "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. For details, see:\n- \"Authorization Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Capture Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\n- \"Credit Information for Specific Processors\" in the [Credit Card Services Using the SCMP API Guide](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/).\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. For details, see \"Zero Amount Authorizations,\" \"Credit Information for Specific Processors\" in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\n\n#### Card Present\nRequired to include either this field or `orderInformation.lineItems[].unitPrice` for the order.\n\n#### Invoicing\nRequired for creating a new invoice.\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. For details, see `grand_total_amount` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### FDMS South\nIf you accept IDR or CLP currencies, see the entry for FDMS South in \"Authorization Information for Specific Processors\" of the [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/)\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "type": "object", + "title": "vasV2PaymentsPost400Response", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - PROCESSOR_UNAVAILABLE\n - AVS_FAILED\n - INVALID_MERCHANT_CONFIGURATION\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "vasV2PaymentsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Basic Tax Calculation Request", + "sample-name": "Tax Calculation", + "value": { + "clientReferenceInformation": { + "code": "TAX_TC001" + }, + "orderInformation": { + "billTo": { + "country": "US", + "address1": "1 Market St", + "postalCode": 94105, + "locality": "San Francisco", + "administrativeArea": "CA" + }, + "amountDetails": { + "currency": "USD" + }, + "lineItems": [ + { + "productSKU": "07-12-00657", + "productName": "Chewing Gum", + "productCode": 50161815, + "quantity": 1, + "unitPrice": 1200 + }, + { + "productSKU": "07-12-00659", + "productName": "Sugar Cookies", + "productCode": 50181905, + "quantity": 1, + "unitPrice": 1240 + }, + { + "productSKU": "07-12-00658", + "productName": "Carbonated Water", + "productCode": 5020.11, + "quantity": 1, + "unitPrice": 9001 + } + ] + }, + "taxInformation": { + "showTaxPerLineItem": "Yes" + } + } + }, + "example1": { + "summary": "Tax Refund Request", + "sample-name": "Tax Refund Calculation", + "value": { + "clientReferenceInformation": { + "code": "TAX_TC001" + }, + "orderInformation": { + "billTo": { + "country": "US", + "address1": "1 Market St", + "postalCode": 94105, + "locality": "San Francisco", + "administrativeArea": "CA" + }, + "shipTo": { + "country": "US", + "address1": "123 Russel St.", + "postalCode": 32401, + "locality": "Panama City", + "administrativeArea": "FL" + }, + "shippingDetails": { + "shipFromCountry": "CA", + "shipFromLocality": "Cambridge Bay", + "shipFromAdministrativeArea": "NL", + "shipFromPostalCode": "A0G 1T0" + }, + "amountDetails": { + "currency": "USD" + }, + "lineItems": [ + { + "productSKU": "07-12-00657", + "productName": "Chewing Gum", + "productCode": 50161815, + "quantity": 1, + "unitPrice": 1200 + }, + { + "productSKU": "07-12-00659", + "productName": "Sugar Cookies", + "productCode": 50181905, + "quantity": 1, + "unitPrice": 1240 + }, + { + "productSKU": "07-12-00658", + "productName": "Carbonated Water", + "productCode": 5020.11, + "quantity": 1, + "unitPrice": 9001 + } + ] + }, + "taxInformation": { + "showTaxPerLineItem": "Yes", + "refundIndicator": true + }, + "merchantInformation": { + "vatRegistrationNumber": "abcdef" + } + } + }, + "example2": { + "summary": "Committed Tax Call Request", + "sample-name": "Committed Tax Calculation", + "value": { + "clientReferenceInformation": { + "code": "TAX_TC001" + }, + "orderInformation": { + "billTo": { + "country": "US", + "address1": "1 Market St", + "postalCode": 94105, + "locality": "San Francisco", + "administrativeArea": "CA" + }, + "shipTo": { + "country": "US", + "address1": "123 Russel St.", + "postalCode": 32401, + "locality": "Panama City", + "administrativeArea": "FL" + }, + "shippingDetails": { + "shipFromCountry": "CA", + "shipFromLocality": "Cambridge Bay", + "shipFromAdministrativeArea": "NL", + "shipFromPostalCode": "A0G 1T0" + }, + "amountDetails": { + "currency": "USD" + }, + "lineItems": [ + { + "productSKU": "07-12-00657", + "productName": "Chewing Gum", + "productCode": 50161815, + "quantity": 1, + "unitPrice": 1200 + }, + { + "productSKU": "07-12-00659", + "productName": "Sugar Cookies", + "productCode": 50181905, + "quantity": 1, + "unitPrice": 1240 + }, + { + "productSKU": "07-12-00658", + "productName": "Carbonated Water", + "productCode": 5020.11, + "quantity": 1, + "unitPrice": 9001 + } + ] + }, + "taxInformation": { + "showTaxPerLineItem": "Yes", + "commitIndicator": true + }, + "merchantInformation": { + "vatRegistrationNumber": "abcdef" + } + } + }, + "example3": { + "summary": "Committed Tax Refund Call Request", + "sample-name": "Committed Tax Refund Calculation", + "value": { + "clientReferenceInformation": { + "code": "TAX_TC001" + }, + "orderInformation": { + "billTo": { + "country": "US", + "address1": "1 Market St", + "postalCode": 94105, + "locality": "San Francisco", + "administrativeArea": "CA" + }, + "shipTo": { + "country": "US", + "address1": "123 Russel St.", + "postalCode": 32401, + "locality": "Panama City", + "administrativeArea": "FL" + }, + "shippingDetails": { + "shipFromCountry": "CA", + "shipFromLocality": "Cambridge Bay", + "shipFromAdministrativeArea": "NL", + "shipFromPostalCode": "A0G 1T0" + }, + "amountDetails": { + "currency": "USD" + }, + "lineItems": [ + { + "productSKU": "07-12-00657", + "productName": "Chewing Gum", + "productCode": 50161815, + "quantity": 1, + "unitPrice": 1200 + }, + { + "productSKU": "07-12-00659", + "productName": "Sugar Cookies", + "productCode": 50181905, + "quantity": 1, + "unitPrice": 1240 + }, + { + "productSKU": "07-12-00658", + "productName": "Carbonated Water", + "productCode": 5020.11, + "quantity": 1, + "unitPrice": 9001 + } + ] + }, + "taxInformation": { + "showTaxPerLineItem": "Yes", + "commitIndicator": true, + "refundIndicator": true + }, + "merchantInformation": { + "vatRegistrationNumber": "abcdef" + } + } + } + } + } + }, + "/vas/v2/tax/{id}": { + "patch": { + "summary": "Void Taxes", + "description": "Pass the Tax Request ID in the PATCH request to void the committed tax calculation.", + "tags": [ + "taxes" + ], + "operationId": "voidTax", + "x-devcenter-metaData": { + "categoryTag": "Value_Added_Service" + }, + "parameters": [ + { + "name": "voidTaxRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + }, + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + } + } + } + } + } + } + } + }, + { + "name": "id", + "in": "path", + "description": "The tax ID returned from a previous request.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successful response.", + "schema": { + "title": "vasV2TaxVoid200Response", + "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.\nIt is also appended to the endpoint of the resource.\nOn incremental authorizations, this value with be the same as the identification number returned in the original authorization response.\n" + }, + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - VOIDED\n" + }, + "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\ntransaction so that you can perform meaningful searches for the transaction.\n\n#### Used by\n**Authorization**\nRequired field.\n\n#### PIN Debit\nRequests for PIN debit reversals need to use the same merchant reference number that was used in the transaction that is being\nreversed.\n\nRequired field for all PIN Debit requests (purchase, credit, and reversal).\n\n#### FDC Nashville Global\nCertain 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.\n" + } + } + }, + "voidAmountDetails": { + "type": "object", + "properties": { + "voidAmount": { + "type": "string", + "description": "Total amount of the void.\n\n#### PIN Debit\nAmount of the reversal.\n\nReturned by PIN debit reversal.\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)\n\n#### Used by\n**Authorization**\nRequired field.\n\n**Authorization Reversal**\nFor 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.\n\n#### PIN Debit\nCurrency 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).\nReturned by PIN debit purchase.\n\nFor 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.\nFor the possible values, see the [ISO Standard Currency Codes](https://developer.cybersource.com/library/documentation/sbc/quickref/currencies.pdf).\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.\n\n#### DCC for First Data\nYour local currency. For details, see the `currency` field description in [Dynamic Currency Conversion For First Data Using the SCMP API](http://apps.cybersource.com/library/documentation/dev_guides/DCC_FirstData_SCMP/DCC_FirstData_SCMP_API.pdf).\n\n#### Tax Calculation\nRequired for international tax and value added tax only.\nOptional for U.S. and Canadian taxes.\nYour local currency.\n" + } + } + } + } + } + }, + "400": { + "description": "Invalid request.", + "schema": { + "title": "vasV2TaxVoidsPost400Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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 - INVALID_DATA\n - NOT_VOIDABLE\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "details": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "description": "This is the flattened JSON object field name/path that is either missing or invalid." + }, + "reason": { + "type": "string", + "description": "Possible reasons for the error.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + } + } + } + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.", + "schema": { + "title": "vasV2TaxVoidsPost502Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - SERVER_ERROR\n" + }, + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - SYSTEM_ERROR\n - SERVER_TIMEOUT\n - SERVICE_TIMEOUT\n" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + } + } + } + } + }, + "x-example": { + "example0": { + "summary": "Void a Committed Tax Call", + "value": { + "clientReferenceInformation": { + "code": "TAX_TC001" + } + }, + "depends": { + "example": { + "path": "/vas/v2/tax", + "verb": "patch", + "exampleId": "example0" + }, + "fieldMapping": [ + { + "sourceField": "id", + "destinationField": "id", + "fieldTypeInDestination": "path" + } + ] + } + } + } + } + }, + "/kms/v2/keys-sym": { + "post": { + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "summary": "Create Shared-Secret Keys", + "description": "Create one or more Shared-Secret Keys\n", + "tags": [ + "Symmetric Key Management" + ], + "operationId": "createV2SharedSecretKeys", + "parameters": [ + { + "name": "createSharedSecretKeysRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "required": [ + "organizationId" + ], + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + } + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "kmsV2KeysSymPost201Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "externalOrganizationId": { + "type": "string", + "description": "Payworks MerchantId for given organizationId.\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number\n" + }, + "key": { + "type": "string", + "description": "value of the key\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n" + }, + "expirationDate": { + "type": "string", + "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + }, + "/kms/v2/keys-sym/{keyId}": { + "get": { + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "summary": "Retrieves shared secret key details", + "description": "Retrieves keys details by providing the key id.", + "tags": [ + "Symmetric Key Management" + ], + "operationId": "getKeyDetails", + "parameters": [ + { + "name": "keyId", + "in": "path", + "description": "Key ID.\n", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successful response.", + "schema": { + "title": "kmsV2KeysSymGet200Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" + }, + "keyInformation": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "keyId": { + "type": "string", + "description": "Key serial number\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" + }, + "expirationDate": { + "type": "string", + "description": "The expiration time in UTC.\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key\n" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid Request", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + }, + "/kms/v2/keys-sym/deletes": { + "post": { + "summary": "Delete one or more Symmetric keys", + "description": "'Delete one or more Symmetric keys'\n", + "tags": [ + "Symmetric Key Management" + ], + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "operationId": "deleteBulkSymmetricKeys", + "parameters": [ + { + "name": "deleteBulkSymmetricKeysRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "required": [ + "organizationId", + "keyId" + ], + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number" + } + } + } + } + } + } + } + ], + "responses": { + "200": { + "description": "Successful response\n", + "schema": { + "title": "kmsV2KeysSymDeletesPost200Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "keyId": { + "type": "string", + "description": "Key serial number\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key\n" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + }, + "/kms/v2/keys-asym": { + "post": { + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "summary": "Create one or more PKCS12 keys", + "description": "'Create one or more PKCS12 keys'\n", + "tags": [ + "Asymmetric Key Management" + ], + "operationId": "createP12Keys", + "parameters": [ + { + "name": "createP12KeysRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "required": [ + "cert", + "organizationId" + ], + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "cert": { + "type": "string", + "description": "Certificate Signing Request(csr), one needs to use the contents of the csr created for the same organizationId. Please extract string from '\\n' and '-----BEGIN CERTIFICATE REQUEST-----','-----END CERTIFICATE REQUEST-----'\n" + } + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "kmsV2KeysAsymPost201Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number\n" + }, + "key": { + "type": "string", + "description": "value of the key\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n" + }, + "expirationDate": { + "type": "string", + "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key" + }, + "alias": { + "type": "string", + "description": "Key alias" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + }, + "certificateInformation": { + "type": "array", + "items": { + "type": "object", + "properties": { + "alias": { + "type": "string", + "description": "Key alias" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number\n" + }, + "key": { + "type": "string", + "description": "value of the key\n" + }, + "expirationDate": { + "type": "string", + "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" + } + } + } + } + } + } + }, + "400": { + "description": "Invalid Request", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + }, + "/kms/v2/keys-asym/{keyId}": { + "get": { + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "summary": "Retrieves PKCS12 key details", + "description": "Retrieves keys details by providing the key id.", + "tags": [ + "Asymmetric Key Management" + ], + "operationId": "getP12KeyDetails", + "parameters": [ + { + "name": "keyId", + "in": "path", + "description": "Key ID.\n", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successful response.", + "schema": { + "title": "kmsV2KeysAsymGet200Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "keyInformation": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" + }, + "expirationDate": { + "type": "string", + "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key" + }, + "alias": { + "type": "string", + "description": "Key alias" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid Request", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + }, + "/kms/v2/keys-asym/deletes": { + "post": { + "summary": "Delete one or more PKCS12 keys", + "description": "'Delete one or more PKCS12 keys'\n", + "tags": [ + "Asymmetric Key Management" + ], + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "operationId": "deleteBulkP12Keys", + "parameters": [ + { + "name": "deleteBulkP12KeysRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "required": [ + "organizationId", + "keyId" + ], + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number" + } + } + } + } + } + } + } + ], + "responses": { + "200": { + "description": "Successful response\n", + "schema": { + "title": "kmsV2KeysAsymDeletesPost200Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n - INACTIVE\n - EXPIRED\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + }, + "/kms/v2/keys-sym/verifi": { + "post": { + "x-devcenter-metaData": { + "categoryTag": "Key_Management", + "firstLevelApiLifeCycle": "hidden", + "secondLevelApiLifeCycle": "hidden", + "apiLifeCycle": "hidden" + }, + "summary": "Create Shared-Secret Keys as per verifi spec", + "description": "Create one or more Shared-Secret Keys as per Verifi spec with 32 chars, store digest algo during key generation.\n", + "tags": [ + "Symmetric Key Management" + ], + "operationId": "createV2SharedSecretKeys-verifi", + "parameters": [ + { + "name": "v-ic-domain", + "in": "header", + "description": "domain", + "required": true, + "type": "string" + }, + { + "name": "createSharedSecretKeysVerifiRequest", + "in": "body", + "required": true, + "schema": { + "type": "object", + "properties": { + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "required": [ + "organizationId" + ], + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "digestAlgorithm": { + "type": "string", + "description": "Algorithm for message signature authentication\n", + "enum": [ + "HMACSHA1", + "HMACSHA2" + ], + "default": "HMACSHA2" + } + } + } + } + } + } + } + ], + "responses": { + "201": { + "description": "Successful response.", + "schema": { + "title": "kmsV2KeysSymPost201Response", + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "status": { + "type": "string", + "description": "The status of the submitted transaction.\n\nPossible values:\n - ACCEPTED\n" + }, + "clientReferenceInformation": { + "type": "object", + "properties": { + "code": { + "type": "string", + "maxLength": 50, + "description": "Client-generated order reference or tracking number. CyberSource recommends that you send a unique value.\n" + }, + "comments": { + "type": "string", + "description": "Comments" + }, + "partner": { + "type": "object", + "properties": { + "developerId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the developer that helped integrate a partner solution to CyberSource.\n\nSend this value in all requests that are sent through the partner solutions built by that developer.\nCyberSource assigns the ID to the developer.\n\n**Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.\n" + }, + "solutionId": { + "type": "string", + "maxLength": 8, + "description": "Identifier for the partner that is integrated to CyberSource.\n\nSend this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.\n\n**Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.\n" + } + } + } + } + }, + "keyInformation": { + "type": "array", + "items": { + "type": "object", + "description": "key information\n", + "properties": { + "organizationId": { + "type": "string", + "description": "Merchant Id\n" + }, + "externalOrganizationId": { + "type": "string", + "description": "Payworks MerchantId for given organizationId.\n" + }, + "referenceNumber": { + "type": "string", + "description": "Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client\u2019s convenience. If client specifies value for this field in the request, it is expected to be available in the response.\n" + }, + "keyId": { + "type": "string", + "description": "Key Serial Number\n" + }, + "key": { + "type": "string", + "description": "value of the key\n" + }, + "status": { + "type": "string", + "description": "The status of the key.\n\nPossible values:\n - FAILED\n - ACTIVE\n" + }, + "expirationDate": { + "type": "string", + "description": "The expiration time in UTC. `Format: YYYY-MM-DDThh:mm:ssZ`\n\nExample 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.\n" + }, + "message": { + "type": "string", + "description": "message in case of failed key" + }, + "errorInformation": { + "type": "object", + "properties": { + "reason": { + "type": "string", + "description": "The reason of the status.\n\nPossible values:\n - MISSING_FIELD\n - INVALID_DATA\n" + }, + "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" + } + } + } + } + } + } + } + } + } + } + } + }, + "400": { + "description": "Invalid request.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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" + }, + "message": { + "type": "string", + "description": "The detail message related to the status and reason listed above." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + }, + "502": { + "description": "Unexpected system error or system timeout.\n", + "schema": { + "type": "object", + "properties": { + "submitTimeUtc": { + "type": "string", + "description": "Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`\n**Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.).\nThe `T` separates the date and the time. The `Z` indicates UTC.\n\nReturned by Cybersource for all services.\n" + }, + "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." + }, + "statusCode": { + "type": "string", + "description": "HTTP status code of the submitted request.\n\nPossible values:\n - 500\n" + } + } + } + } + } + } + } + } } \ No newline at end of file From 479cd4d30e772a1b2d16fde8e8c80e8ff5cc412b Mon Sep 17 00:00:00 2001 From: rsachan8 Date: Wed, 14 Sep 2022 15:59:52 +0530 Subject: [PATCH 2/3] September 2022 release changes --- docs/AsymmetricKeyManagementApi.md | 16 +-- docs/InlineResponse4002.md | 3 +- docs/InlineResponse502.md | 12 ++ ...sV2KeysSymPost201ResponseKeyInformation.md | 1 + docs/MitVoidRequest.md | 1 + docs/Ptsv2paymentsPaymentInformationCard.md | 2 +- ...entsPaymentInformationPaymentTypeMethod.md | 2 +- docs/Ptsv2paymentsPointOfSaleInformation.md | 1 + docs/Ptsv2paymentsProcessingInformation.md | 2 + ...ocessingInformationAuthorizationOptions.md | 1 + ...rocessingInformationJapanPaymentOptions.md | 6 + docs/Ptsv2voidsProcessingInformation.md | 8 ++ ...sponseClientReferenceInformationPartner.md | 1 + ...actionsGet200ResponsePaymentInformation.md | 1 + ...onsGet200ResponsePaymentInformationCard.md | 2 +- ...t200ResponsePaymentInformationFluidData.md | 8 ++ ...onsGet200ResponsePointOfSaleInformation.md | 1 + ...ionsGet200ResponseProcessingInformation.md | 1 + ...ponseEmbeddedClientReferenceInformation.md | 2 +- ...beddedClientReferenceInformationPartner.md | 8 ++ ...01ResponseEmbeddedProcessingInformation.md | 1 + src/api/AsymmetricKeyManagementApi.js | 18 +-- src/api/SecureFileShareApi.js | 4 +- src/api/SymmetricKeyManagementApi.js | 8 +- src/index.js | 26 +++- src/model/InlineResponse4002.js | 11 +- src/model/InlineResponse502.js | 118 ++++++++++++++++++ ...sV2KeysSymPost201ResponseKeyInformation.js | 9 ++ src/model/MitVoidRequest.js | 16 ++- .../Ptsv2paymentsPaymentInformationCard.js | 2 +- ...entsPaymentInformationPaymentTypeMethod.js | 2 +- .../Ptsv2paymentsPointOfSaleInformation.js | 9 ++ .../Ptsv2paymentsProcessingInformation.js | 18 +++ ...ocessingInformationAuthorizationOptions.js | 9 ++ ...rocessingInformationJapanPaymentOptions.js | 54 ++++++++ src/model/Ptsv2voidsProcessingInformation.js | 82 ++++++++++++ ...sponseClientReferenceInformationPartner.js | 9 ++ ...actionsGet200ResponsePaymentInformation.js | 16 ++- ...onsGet200ResponsePaymentInformationCard.js | 2 +- ...t200ResponsePaymentInformationFluidData.js | 82 ++++++++++++ ...onsGet200ResponsePointOfSaleInformation.js | 9 ++ ...ionsGet200ResponseProcessingInformation.js | 9 ++ ...ponseEmbeddedClientReferenceInformation.js | 12 +- ...beddedClientReferenceInformationPartner.js | 82 ++++++++++++ ...01ResponseEmbeddedProcessingInformation.js | 9 ++ test/model/InlineResponse4002.spec.js | 6 + test/model/InlineResponse502.spec.js | 91 ++++++++++++++ ...ysSymPost201ResponseKeyInformation.spec.js | 6 + test/model/MitVoidRequest.spec.js | 6 + ...tsv2paymentsPointOfSaleInformation.spec.js | 6 + ...Ptsv2paymentsProcessingInformation.spec.js | 12 ++ ...ingInformationAuthorizationOptions.spec.js | 6 + ...singInformationJapanPaymentOptions.spec.js | 36 ++++++ .../Ptsv2voidsProcessingInformation.spec.js | 67 ++++++++++ ...eClientReferenceInformationPartner.spec.js | 6 + ...nsGet200ResponsePaymentInformation.spec.js | 6 + ...esponsePaymentInformationFluidData.spec.js | 67 ++++++++++ ...t200ResponsePointOfSaleInformation.spec.js | 6 + ...et200ResponseProcessingInformation.spec.js | 6 + ...dClientReferenceInformationPartner.spec.js | 67 ++++++++++ ...ponseEmbeddedProcessingInformation.spec.js | 6 + 61 files changed, 1047 insertions(+), 49 deletions(-) create mode 100644 docs/InlineResponse502.md create mode 100644 docs/Ptsv2voidsProcessingInformation.md create mode 100644 docs/TssV2TransactionsGet200ResponsePaymentInformationFluidData.md create mode 100644 docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.md create mode 100644 src/model/InlineResponse502.js create mode 100644 src/model/Ptsv2voidsProcessingInformation.js create mode 100644 src/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.js create mode 100644 src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.js create mode 100644 test/model/InlineResponse502.spec.js create mode 100644 test/model/Ptsv2voidsProcessingInformation.spec.js create mode 100644 test/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.spec.js create mode 100644 test/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.spec.js diff --git a/docs/AsymmetricKeyManagementApi.md b/docs/AsymmetricKeyManagementApi.md index 88fd3481..af57a0a5 100644 --- a/docs/AsymmetricKeyManagementApi.md +++ b/docs/AsymmetricKeyManagementApi.md @@ -4,18 +4,18 @@ All URIs are relative to *https://apitest.cybersource.com* Method | HTTP request | Description ------------- | ------------- | ------------- -[**createP12Keys**](AsymmetricKeyManagementApi.md#createP12Keys) | **POST** /kms/v2/keys-asym | Create one or more PKCS#12 keys -[**deleteBulkP12Keys**](AsymmetricKeyManagementApi.md#deleteBulkP12Keys) | **POST** /kms/v2/keys-asym/deletes | Delete one or more PKCS#12 keys -[**getP12KeyDetails**](AsymmetricKeyManagementApi.md#getP12KeyDetails) | **GET** /kms/v2/keys-asym/{keyId} | Retrieves PKCS#12 key details +[**createP12Keys**](AsymmetricKeyManagementApi.md#createP12Keys) | **POST** /kms/v2/keys-asym | Create one or more PKCS12 keys +[**deleteBulkP12Keys**](AsymmetricKeyManagementApi.md#deleteBulkP12Keys) | **POST** /kms/v2/keys-asym/deletes | Delete one or more PKCS12 keys +[**getP12KeyDetails**](AsymmetricKeyManagementApi.md#getP12KeyDetails) | **GET** /kms/v2/keys-asym/{keyId} | Retrieves PKCS12 key details # **createP12Keys** > KmsV2KeysAsymPost201Response createP12Keys(createP12KeysRequest) -Create one or more PKCS#12 keys +Create one or more PKCS12 keys -'Create one or more PKCS#12 keys' +'Create one or more PKCS12 keys' ### Example ```javascript @@ -59,9 +59,9 @@ No authorization required # **deleteBulkP12Keys** > KmsV2KeysAsymDeletesPost200Response deleteBulkP12Keys(deleteBulkP12KeysRequest) -Delete one or more PKCS#12 keys +Delete one or more PKCS12 keys -'Delete one or more PKCS#12 keys' +'Delete one or more PKCS12 keys' ### Example ```javascript @@ -105,7 +105,7 @@ No authorization required # **getP12KeyDetails** > KmsV2KeysAsymGet200Response getP12KeyDetails(keyId) -Retrieves PKCS#12 key details +Retrieves PKCS12 key details Retrieves keys details by providing the key id. diff --git a/docs/InlineResponse4002.md b/docs/InlineResponse4002.md index 666d78fb..1cc0d466 100644 --- a/docs/InlineResponse4002.md +++ b/docs/InlineResponse4002.md @@ -5,7 +5,8 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **submitTimeUtc** | **String** | 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. | [optional] **status** | **String** | The status of the submitted transaction. Possible values: - INVALID_REQUEST | [optional] -**reason** | **String** | The reason of the status. Possible values: - MISSING_FIELD - INVALID_DATA | [optional] +**reason** | **String** | The reason of the status. Possible values: - MISSING_FIELD | [optional] **message** | **String** | The detail message related to the status and reason listed above. | [optional] +**statusCode** | **String** | HTTP status code of the submitted request. Possible values: - 500 | [optional] diff --git a/docs/InlineResponse502.md b/docs/InlineResponse502.md new file mode 100644 index 00000000..cbecfe9a --- /dev/null +++ b/docs/InlineResponse502.md @@ -0,0 +1,12 @@ +# CyberSource.InlineResponse502 + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**submitTimeUtc** | **String** | 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. | [optional] +**status** | **String** | The status of the submitted transaction. Possible values: - SERVER_ERROR | [optional] +**reason** | **String** | The reason of the status. Possible values: - SYSTEM_ERROR - SERVER_TIMEOUT - SERVICE_TIMEOUT | [optional] +**message** | **String** | The detail message related to the status and reason listed above. | [optional] +**statusCode** | **String** | HTTP status code of the submitted request. Possible values: - 500 | [optional] + + diff --git a/docs/KmsV2KeysSymPost201ResponseKeyInformation.md b/docs/KmsV2KeysSymPost201ResponseKeyInformation.md index 4ed65ffe..38ca7bf2 100644 --- a/docs/KmsV2KeysSymPost201ResponseKeyInformation.md +++ b/docs/KmsV2KeysSymPost201ResponseKeyInformation.md @@ -4,6 +4,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **organizationId** | **String** | Merchant Id | [optional] +**externalOrganizationId** | **String** | Payworks MerchantId for given organizationId. | [optional] **referenceNumber** | **String** | Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client’s convenience. If client specifies value for this field in the request, it is expected to be available in the response. | [optional] **keyId** | **String** | Key Serial Number | [optional] **key** | **String** | value of the key | [optional] diff --git a/docs/MitVoidRequest.md b/docs/MitVoidRequest.md index d32b944f..f6c49df1 100644 --- a/docs/MitVoidRequest.md +++ b/docs/MitVoidRequest.md @@ -6,5 +6,6 @@ Name | Type | Description | Notes **clientReferenceInformation** | [**Ptsv2paymentsClientReferenceInformation**](Ptsv2paymentsClientReferenceInformation.md) | | [optional] **paymentInformation** | [**Ptsv2paymentsidvoidsPaymentInformation**](Ptsv2paymentsidvoidsPaymentInformation.md) | | [optional] **orderInformation** | [**Ptsv2paymentsidvoidsOrderInformation**](Ptsv2paymentsidvoidsOrderInformation.md) | | [optional] +**processingInformation** | [**Ptsv2voidsProcessingInformation**](Ptsv2voidsProcessingInformation.md) | | [optional] diff --git a/docs/Ptsv2paymentsPaymentInformationCard.md b/docs/Ptsv2paymentsPaymentInformationCard.md index 86c02370..2a479fab 100644 --- a/docs/Ptsv2paymentsPaymentInformationCard.md +++ b/docs/Ptsv2paymentsPaymentInformationCard.md @@ -7,7 +7,7 @@ Name | Type | Description | Notes **expirationMonth** | **String** | 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. | [optional] **expirationYear** | **String** | 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. | [optional] **type** | **String** | 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. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. 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] - `014`: Enroute[^1] - `021`: JAL[^1] - `024`: Maestro (UK Domestic)[^1] - `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types. - `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types. - `034`: Dankort[^1] - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `039`: Encoded account number[^1] - `040`: UATP[^1] - `042`: Maestro (International)[^1] - `050`: Hipercard[^2,3] - `051`: Aura - `054`: Elo[^3] - `062`: China UnionPay [^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 | [optional] -**useAs** | **String** | Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. #### Cielo and Comercio Latino Possible values: - CREDIT: Credit card - DEBIT: Debit card This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier This field is supported only for Mastercard transactions in Brazil on CyberSource through VisaNet. | [optional] +**useAs** | **String** | Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. Possible values: - C: Credit transaction - D: Debit transaction This field is supported only for all card Types on Visa Platform Connect. This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier | [optional] **sourceAccountType** | **String** | Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. This field is required in the following cases: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. - Applicable only for CyberSource through VisaNet (CtV). **Note** Combo cards in Brazil contain credit and debit functionality in a single card. Visa systems use a credit bank identification number (BIN) for this type of card. Using the BIN to determine whether a card is debit or credit can cause transactions with these cards to be processed incorrectly. CyberSource strongly recommends that you include this field for combo card transactions. Possible values include the following. - `CHECKING`: Checking account - `CREDIT`: Credit card account - `SAVING`: Saving account - `LINE_OF_CREDIT`: Line of credit or credit portion of combo card - `PREPAID`: Prepaid card account or prepaid portion of combo card - `UNIVERSAL`: Universal account | [optional] **sourceAccountTypeDetails** | **String** | Type of account that is being used when the value for the override_payment_method field is line of credit (LI) or prepaid card (PP). Possible values for line of credit: - `AGRC`: Visa Agro Custeio - `AGRE`: Visa Agro Electron - `AGRI`: Visa Agro Investimento - `AGRO`: Visa Agro Possible values for prepaid card: - `VVA`: Visa Vale Alimentacao - `VVF`: Visa Vale Flex - `VVR`: Visa Vale Refeicao This field is supported only for combo card transactions in Brazil on CyberSource through VisaNet. | [optional] **securityCode** | **String** | 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. | [optional] diff --git a/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md b/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md index 27a349d4..76e34bcd 100644 --- a/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md +++ b/docs/Ptsv2paymentsPaymentInformationPaymentTypeMethod.md @@ -3,6 +3,6 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**name** | **String** | A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal | [optional] +**name** | **String** | A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal For Japan Payment Processing Valid Values: - 1 Banking Data - 2 Authorization Data | [optional] diff --git a/docs/Ptsv2paymentsPointOfSaleInformation.md b/docs/Ptsv2paymentsPointOfSaleInformation.md index 6308d03f..c3e224fd 100644 --- a/docs/Ptsv2paymentsPointOfSaleInformation.md +++ b/docs/Ptsv2paymentsPointOfSaleInformation.md @@ -5,6 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **terminalId** | **String** | Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements. #### CyberSource through VisaNet A list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for your CyberSource account, the value you send for this field is validated against the list each time you include the field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support. When you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account. #### FDC Nashville Global To have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you. #### For Payouts This field is applicable for CyberSource through VisaNet. #### GPX Identifier for the terminal at your retail location. A list of all possible values is stored in your account. If terminal ID validation is enabled for your account, the value you send for this field is validated against the list each time you include the field in a request. To enable or disable terminal ID validation, contact customer support. When you do not include this field in a request, the default value that is defined in your account is used. Optional for authorizations. #### Used by **Authorization** Optional for the following processors. When you do not include this field in a request, the default value that is defined in your account is used. - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - SIX - Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`. - FDMS Nashville: The default value that is defined in your account is used. - GPX - OmniPay Direct: Optional field. For the following processors, this field is not used. - GPN - JCN Gateway - RBS WorldPay Atlanta - TSYS Acquiring Solutions - Worldpay VAP #### Card Present reply Terminal identifier assigned by the acquirer. This value must be printed on the receipt. | [optional] **terminalSerialNumber** | **String** | Terminal serial number assigned by the hardware manufacturer. This value is provided by the client software that is installed on the POS terminal. This value is not forwarded to the processor. Instead, the value is forwarded to the reporting functionality. #### Used by **Authorization and Credit** Optional. This field is supported only by client software that is installed on your POS terminals for the following processors: - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - OmniPay Direct - SIX | [optional] +**cardholderVerificationMethodUsed** | **Number** | Method that was used to verify the cardholder's identity. Possible values: - `0`: No verification - `1`: Signature - `2`: PIN - `3`: Cardholder device CVM | [optional] **laneNumber** | **String** | Identifier for an alternate terminal at your retail location. You define the value for this field. This field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors. Use the `terminalId` field to identify the main terminal at your retail location. If your retail location has multiple terminals, use this `laneNumber` field to identify the terminal used for the transaction. This field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor. Optional field. #### Card present reply messaging Identifier for an alternate terminal at your retail location. You defined the value for this field in the request message. This value must be printed on the receipt. This field is supported only for MasterCard transactions on FDC Nashville Global. | [optional] **catLevel** | **Number** | Type of cardholder-activated terminal. Possible values: - 1: Automated dispensing machine - 2: Self-service terminal - 3: Limited amount terminal - 4: In-flight commerce (IFC) terminal - 5: Radio frequency device - 6: Mobile acceptance terminal - 7: Electronic cash register - 8: E-commerce device at your location - 9: Terminal or cash register that uses a dialup connection to connect to the transaction processing network #### Chase Paymentech Solutions Only values 1, 2, and 3 are supported. Required if `pointOfSaleInformation.terminalID` is included in the request; otherwise, optional. #### CyberSource through VisaNet Values 1 through 6 are supported on CyberSource through VisaNet, but some acquirers do not support all six values. Optional field. #### FDC Nashville Global Only values 7, 8, and 9 are supported. Optional field for EMV transactions; otherwise, not used. #### GPN Only values 6, 7, 8, and 9 are supported. Required field. #### JCN Gateway Only values 6, 7, 8, and 9 are supported. Required field. #### TSYS Acquiring Solutions Only value 6 is supported. Required for transactions from mobile devices; otherwise, not used. #### All other processors Not used. Nonnegative integer. | [optional] **entryMode** | **String** | Method of entering payment card information into the POS terminal. Possible values: - `contact`: Read from direct contact with chip card. - `contactless`: Read from a contactless interface using chip data. - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct. - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct. - `swiped`: Read from credit card magnetic stripe. The `contact`, `contactless`, and `msd` values are supported only for EMV transactions. #### Used by **Authorization** Required field. #### Card Present Card present information about EMV applies only to credit card processing and PIN debit processing. All other card present information applies only to credit card processing. #### PIN debit Required for a PIN debit purchase and a PIN debit credit request. | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformation.md b/docs/Ptsv2paymentsProcessingInformation.md index 5a25531d..69a38604 100644 --- a/docs/Ptsv2paymentsProcessingInformation.md +++ b/docs/Ptsv2paymentsProcessingInformation.md @@ -9,10 +9,12 @@ Name | Type | Description | Notes **processorId** | **String** | Value that identifies the processor/acquirer to use for the transaction. This value is supported only for **CyberSource through VisaNet**. Contact CyberSource Customer Support to get the value for this field. | [optional] **businessApplicationId** | **String** | Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. For valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf) | [optional] **commerceIndicator** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" | [optional] +**commerceIndicatorLabel** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" | [optional] **paymentSolution** | **String** | Type of digital payment solution for the transaction. Possible Values: - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/) - `001`: Apple Pay. - `004`: Cybersource In-App Solution. - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/) - `006`: Android Pay. - `007`: Chase Pay. - `008`: Samsung Pay. - `012`: Google Pay. - `013`: Cybersource P2PE Decryption - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `027`: Click to Pay. | [optional] **reconciliationId** | **String** | Please check with Cybersource customer support to see if your merchant account is configured correctly so you can include this field in your request. * For Payouts: max length for FDCCompass is String (22). | [optional] **linkId** | **String** | Value that links the current authorization request to the original authorization request. Set this value to the ID that was returned in the reply message from the original authorization request. This value is used for: - Partial authorizations - Split shipments For details, see `link_to_request` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/) | [optional] **purchaseLevel** | **String** | Set this field to 3 to indicate that the request includes Level III data. | [optional] +**paymentId** | **String** | This field is to accept the id of credit/capture in the body of L1 requests so the type of void can be identified and processed correctly downstream. | [optional] **reportGroup** | **String** | Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**. For details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/) | [optional] **visaCheckoutId** | **String** | Identifier for the **Visa Checkout** order. Visa Checkout provides a unique order ID for every transaction in the Visa Checkout **callID** field. | [optional] **industryDataType** | **String** | Indicates that the transaction includes industry-specific data. Possible Values: - `airline` - `restaurant` - `lodging` - `auto_rental` - `transit` - `healthcare_medical` - `healthcare_transit` - `transit` #### Card Present, Airlines and Auto Rental You must set this field to `airline` in order for airline data to be sent to the processor. For example, if this field is not set to `airline` or is not included in the request, no airline data is sent to the processor. You must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field is not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor. You must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this field is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor. Restaurant data is supported only on CyberSource through VisaNet. | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformationAuthorizationOptions.md b/docs/Ptsv2paymentsProcessingInformationAuthorizationOptions.md index bdec0522..8a035258 100644 --- a/docs/Ptsv2paymentsProcessingInformationAuthorizationOptions.md +++ b/docs/Ptsv2paymentsProcessingInformationAuthorizationOptions.md @@ -21,5 +21,6 @@ Name | Type | Description | Notes **aggregatedAuthIndicator** | **String** | Indicates if transaction is an aggregated auth Possible values: - **true** - **false** | [optional] **debtRecoveryIndicator** | **String** | Indicates if transaction is a debt recovery request Possible values: - **true** - **false** | [optional] **deferredAuthIndicator** | **Boolean** | Flag that indicates whether the authorization request was delayed because connectivity was interrupted. Possible values: - `true` (Deferred authorization) - `false` (default: Not a deferred authorization) | [optional] +**cashAdvanceIndicator** | **Boolean** | This API field enables the merchant to indicate that a given transaction is Cash Advance. Cash advance or Cash disbursement functionality allows a merchant to dispense cash at a point of sale. It provides the ability of a POS system to act like an ATM. These terminals are typically seen in bank branches where customers can use their card and withdraw cash or at merchant locations where ATMs are sparse. Possible values: - `true` (Cash advance is supported) - `false` (default: cash advance is not supported) | [optional] diff --git a/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md b/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md index 710f4a3a..56468c97 100644 --- a/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md +++ b/docs/Ptsv2paymentsProcessingInformationJapanPaymentOptions.md @@ -4,6 +4,12 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **paymentMethod** | **String** | This value is a 2-digit code indicating the payment method. Use Payment Method Code value that applies to the tranasction. - 10 (One-time payment) - 21, 22, 23, 24 (Bonus(one-time)payment) - 61 (Installment payment) - 31, 32, 33, 34 (Integrated (Bonus + Installment)payment) - 80 (Revolving payment) | [optional] +**bonuses** | **String** | This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6. | [optional] +**bonusMonth** | **String** | This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12. | [optional] +**secondBonusMonth** | **String** | This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12. | [optional] +**bonusAmount** | **String** | This value contains the bonus amount of the first month. Maximum value without decimal 99999999. | [optional] +**secondBonusAmount** | **String** | This value contains the bonus amount of the second month. Maximum value without decimal 99999999. | [optional] +**preapprovalType** | **String** | This will contain the details of the kind of transaction that has been processe. Used only for Japan. Possible Values: - 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft) - 1 = Negative card authorization (authorization-only with 0 or 1 amount) - 2 = Reservation of authorization (authorization-only with amount) - 3 = Cancel transaction - 4 = Merchant-initiated reversal/refund transactions - 5 = Cancel reservation of authorization - 6 = Post authorization | [optional] **installments** | **String** | Number of Installments. | [optional] **terminalId** | **String** | Unique Japan Credit Card Association (JCCA) terminal identifier. The difference between this field and the `pointOfSaleInformation.terminalID` field is that you can define `pointOfSaleInformation.terminalID`, but `processingInformation.japanPaymentOptions.terminalId` is defined by the JCCA and is used only in Japan. This field is supported only on CyberSource through VisaNet and JCN Gateway. Optional field. | [optional] **firstBillingMonth** | **String** | Billing month in MM format. | [optional] diff --git a/docs/Ptsv2voidsProcessingInformation.md b/docs/Ptsv2voidsProcessingInformation.md new file mode 100644 index 00000000..e9f53dec --- /dev/null +++ b/docs/Ptsv2voidsProcessingInformation.md @@ -0,0 +1,8 @@ +# CyberSource.Ptsv2voidsProcessingInformation + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**paymentId** | **String** | This field is to accept the id of credit/capture in the body of L1 requests so the type of void can be identified and processed correctly downstream. | [optional] + + diff --git a/docs/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.md b/docs/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.md index 763bdf7f..34dde66f 100644 --- a/docs/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.md +++ b/docs/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.md @@ -4,5 +4,6 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **solutionId** | **String** | 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. | [optional] +**thirdPartyCertificationNumber** | **String** | 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. | [optional] diff --git a/docs/TssV2TransactionsGet200ResponsePaymentInformation.md b/docs/TssV2TransactionsGet200ResponsePaymentInformation.md index 63e1ee33..7bc0efa3 100644 --- a/docs/TssV2TransactionsGet200ResponsePaymentInformation.md +++ b/docs/TssV2TransactionsGet200ResponsePaymentInformation.md @@ -12,5 +12,6 @@ Name | Type | Description | Notes **paymentInstrument** | [**PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument**](PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument.md) | | [optional] **instrumentIdentifier** | [**TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier**](TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier.md) | | [optional] **shippingAddress** | [**PtsV2PaymentsPost201ResponseTokenInformationShippingAddress**](PtsV2PaymentsPost201ResponseTokenInformationShippingAddress.md) | | [optional] +**fluidData** | [**TssV2TransactionsGet200ResponsePaymentInformationFluidData**](TssV2TransactionsGet200ResponsePaymentInformationFluidData.md) | | [optional] diff --git a/docs/TssV2TransactionsGet200ResponsePaymentInformationCard.md b/docs/TssV2TransactionsGet200ResponsePaymentInformationCard.md index 23be0f05..d4badded 100644 --- a/docs/TssV2TransactionsGet200ResponsePaymentInformationCard.md +++ b/docs/TssV2TransactionsGet200ResponsePaymentInformationCard.md @@ -12,6 +12,6 @@ Name | Type | Description | Notes **issueNumber** | **String** | Number of times a Maestro (UK Domestic) card has been issued to the account holder. The card might or might not have an issue number. The number can consist of one or two digits, and the first digit might be a zero. When you include this value in your request, include exactly what is printed on the card. A value of 2 is different than a value of 02. Do not include the field, even with a blank value, if the card is not a Maestro (UK Domestic) card. **Note** The issue number is not required for Maestro (UK Domestic) transactions. | [optional] **type** | **String** | 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. For card-present transactions on all processors except SIX, the Visa Electron card type is processed the same way that the Visa debit card is processed. 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] - `014`: Enroute[^1] - `021`: JAL[^1] - `024`: Maestro (UK Domestic)[^1] - `031`: Delta[^1]: Use this value only for Ingenico ePayments. For other processors, use `001` for all Visa card types. - `033`: Visa Electron[^1]. Use this value only for Ingenico ePayments and SIX. For other processors, use `001` for all Visa card types. - `034`: Dankort[^1] - `036`: Cartes Bancaires[^1,4] - `037`: Carta Si[^1] - `039`: Encoded account number[^1] - `040`: UATP[^1] - `042`: Maestro (International)[^1] - `050`: Hipercard[^2,3] - `051`: Aura - `054`: Elo[^3] - `062`: China UnionPay [^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 | [optional] **accountEncoderId** | **String** | Identifier for the issuing bank that provided the customer’s encoded account number. Contact your processor for the bank’s ID. | [optional] -**useAs** | **String** | Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. #### Cielo and Comercio Latino Possible values: - CREDIT: Credit card - DEBIT: Debit card This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier This field is supported only for Mastercard transactions in Brazil on CyberSource through VisaNet. | [optional] +**useAs** | **String** | Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. Possible values: - C: Credit transaction - D: Debit transaction This field is supported only for all card Types on Visa Platform Connect. This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier | [optional] diff --git a/docs/TssV2TransactionsGet200ResponsePaymentInformationFluidData.md b/docs/TssV2TransactionsGet200ResponsePaymentInformationFluidData.md new file mode 100644 index 00000000..a1cacc14 --- /dev/null +++ b/docs/TssV2TransactionsGet200ResponsePaymentInformationFluidData.md @@ -0,0 +1,8 @@ +# CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**descriptor** | **String** | The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values: Samsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ= Note: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor. Used by Authorization and Standalone Credits. Required for authorizations and standalone credits. Card Present processing: Format of the encrypted payment data. The value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`. The value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field. If paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==` If paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504` | [optional] + + diff --git a/docs/TssV2TransactionsGet200ResponsePointOfSaleInformation.md b/docs/TssV2TransactionsGet200ResponsePointOfSaleInformation.md index be5b72e6..2d200dba 100644 --- a/docs/TssV2TransactionsGet200ResponsePointOfSaleInformation.md +++ b/docs/TssV2TransactionsGet200ResponsePointOfSaleInformation.md @@ -6,6 +6,7 @@ Name | Type | Description | Notes **terminalId** | **String** | Identifier for the terminal at your retail location. You can define this value yourself, but consult the processor for requirements. #### CyberSource through VisaNet A list of all possible values is stored in your CyberSource account. If terminal ID validation is enabled for your CyberSource account, the value you send for this field is validated against the list each time you include the field in a request. To enable or disable terminal ID validation, contact CyberSource Customer Support. When you do not include this field in a request, CyberSource uses the default value that is defined in your CyberSource account. #### FDC Nashville Global To have your account configured to support this field, contact CyberSource Customer Support. This value must be a value that FDC Nashville Global issued to you. #### For Payouts This field is applicable for CyberSource through VisaNet. #### GPX Identifier for the terminal at your retail location. A list of all possible values is stored in your account. If terminal ID validation is enabled for your account, the value you send for this field is validated against the list each time you include the field in a request. To enable or disable terminal ID validation, contact customer support. When you do not include this field in a request, the default value that is defined in your account is used. Optional for authorizations. #### Used by **Authorization** Optional for the following processors. When you do not include this field in a request, the default value that is defined in your account is used. - American Express Direct - Credit Mutuel-CIC - FDC Nashville Global - SIX - Chase Paymentech Solutions: Optional field. If you include this field in your request, you must also include `pointOfSaleInformation.catLevel`. - FDMS Nashville: The default value that is defined in your account is used. - GPX - OmniPay Direct: Optional field. For the following processors, this field is not used. - GPN - JCN Gateway - RBS WorldPay Atlanta - TSYS Acquiring Solutions - Worldpay VAP #### Card Present reply Terminal identifier assigned by the acquirer. This value must be printed on the receipt. | [optional] **entryMode** | **String** | Method of entering payment card information into the POS terminal. Possible values: - `contact`: Read from direct contact with chip card. - `contactless`: Read from a contactless interface using chip data. - `keyed`: Manually keyed into POS terminal. This value is not supported on OmniPay Direct. - `msd`: Read from a contactless interface using magnetic stripe data (MSD). This value is not supported on OmniPay Direct. - `swiped`: Read from credit card magnetic stripe. The `contact`, `contactless`, and `msd` values are supported only for EMV transactions. #### Used by **Authorization** Required field. #### Card Present Card present information about EMV applies only to credit card processing and PIN debit processing. All other card present information applies only to credit card processing. #### PIN debit Required for a PIN debit purchase and a PIN debit credit request. | [optional] **terminalCapability** | **Number** | POS terminal’s capability. Possible values: - `1`: Terminal has a magnetic stripe reader only. - `2`: Terminal has a magnetic stripe reader and manual entry capability. - `3`: Terminal has manual entry capability only. - `4`: Terminal can read chip cards. - `5`: Terminal can read contactless chip cards; cannot use contact to read chip cards. For an EMV transaction, the value of this field must be `4` or `5`. #### PIN debit Required for PIN debit purchase and PIN debit credit request. #### Used by **Authorization** Required for the following processors: - American Express Direct - Chase Paymentech Solutions - Credit Mutuel-CIC - FDC Nashville Global - FDMS Nashville - OmniPay Direct - SIX - Worldpay VAP Optional for the following processors: - CyberSource through VisaNet - GPN - GPX - JCN Gateway - RBS WorldPay Atlanta - TSYS Acquiring Solutions | [optional] +**cardholderVerificationMethodUsed** | **Number** | Method that was used to verify the cardholder's identity. Possible values: - `0`: No verification - `1`: Signature - `2`: PIN - `3`: Cardholder device CVM | [optional] **emv** | [**Ptsv2paymentsidreversalsPointOfSaleInformationEmv**](Ptsv2paymentsidreversalsPointOfSaleInformationEmv.md) | | [optional] diff --git a/docs/TssV2TransactionsGet200ResponseProcessingInformation.md b/docs/TssV2TransactionsGet200ResponseProcessingInformation.md index f4ad34c6..381d3c3f 100644 --- a/docs/TssV2TransactionsGet200ResponseProcessingInformation.md +++ b/docs/TssV2TransactionsGet200ResponseProcessingInformation.md @@ -6,6 +6,7 @@ Name | Type | Description | Notes **industryDataType** | **String** | Indicates that the transaction includes industry-specific data. Possible Values: - `airline` - `restaurant` - `lodging` - `auto_rental` - `transit` - `healthcare_medical` - `healthcare_transit` - `transit` #### Card Present, Airlines and Auto Rental You must set this field to `airline` in order for airline data to be sent to the processor. For example, if this field is not set to `airline` or is not included in the request, no airline data is sent to the processor. You must set this field to `restaurant` in order for restaurant data to be sent to the processor. When this field is not set to `restaurant` or is not included in the request, no restaurant data is sent to the processor. You must set this field to `auto_rental` in order for auto rental data to be sent to the processor. For example, if this field is not set to `auto_rental` or is not included in the request, no auto rental data is sent to the processor. Restaurant data is supported only on CyberSource through VisaNet. | [optional] **paymentSolution** | **String** | Type of digital payment solution for the transaction. | [optional] **commerceIndicator** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" | [optional] +**commerceIndicatorLabel** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" | [optional] **businessApplicationId** | **String** | Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. For valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf) | [optional] **authorizationOptions** | [**TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions**](TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions.md) | | [optional] **bankTransferOptions** | [**TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions**](TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions.md) | | [optional] diff --git a/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.md b/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.md index b7a18bbc..9eae6684 100644 --- a/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.md +++ b/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.md @@ -6,6 +6,6 @@ Name | Type | Description | Notes **code** | **String** | 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. | [optional] **applicationName** | **String** | 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. | [optional] **applicationUser** | **String** | 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. | [optional] -**partner** | [**TssV2TransactionsGet200ResponseClientReferenceInformationPartner**](TssV2TransactionsGet200ResponseClientReferenceInformationPartner.md) | | [optional] +**partner** | [**TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner**](TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.md) | | [optional] diff --git a/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.md b/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.md new file mode 100644 index 00000000..4d1ee100 --- /dev/null +++ b/docs/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.md @@ -0,0 +1,8 @@ +# CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**solutionId** | **String** | 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. | [optional] + + diff --git a/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md b/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md index 96babe82..07e0fbeb 100644 --- a/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md +++ b/docs/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.md @@ -6,5 +6,6 @@ Name | Type | Description | Notes **paymentSolution** | **String** | Type of digital payment solution for the transaction. Possible Values: - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/) - `001`: Apple Pay. - `004`: Cybersource In-App Solution. - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/) - `006`: Android Pay. - `007`: Chase Pay. - `008`: Samsung Pay. - `012`: Google Pay. - `013`: Cybersource P2PE Decryption - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `027`: Click to Pay. | [optional] **businessApplicationId** | **String** | Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. For valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf) | [optional] **commerceIndicator** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" | [optional] +**commerceIndicatorLabel** | **String** | Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" | [optional] diff --git a/src/api/AsymmetricKeyManagementApi.js b/src/api/AsymmetricKeyManagementApi.js index 51338651..56873a99 100644 --- a/src/api/AsymmetricKeyManagementApi.js +++ b/src/api/AsymmetricKeyManagementApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/CreateP12KeysRequest', 'model/DeleteBulkP12KeysRequest', 'model/InlineResponse4002', 'model/KmsV2KeysAsymDeletesPost200Response', 'model/KmsV2KeysAsymGet200Response', 'model/KmsV2KeysAsymPost201Response', 'model/PtsV2PaymentsPost502Response'], factory); + define(['ApiClient', 'model/CreateP12KeysRequest', 'model/DeleteBulkP12KeysRequest', 'model/InlineResponse4002', 'model/InlineResponse502', 'model/KmsV2KeysAsymDeletesPost200Response', 'model/KmsV2KeysAsymGet200Response', 'model/KmsV2KeysAsymPost201Response'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/CreateP12KeysRequest'), require('../model/DeleteBulkP12KeysRequest'), require('../model/InlineResponse4002'), require('../model/KmsV2KeysAsymDeletesPost200Response'), require('../model/KmsV2KeysAsymGet200Response'), require('../model/KmsV2KeysAsymPost201Response'), require('../model/PtsV2PaymentsPost502Response')); + module.exports = factory(require('../ApiClient'), require('../model/CreateP12KeysRequest'), require('../model/DeleteBulkP12KeysRequest'), require('../model/InlineResponse4002'), require('../model/InlineResponse502'), require('../model/KmsV2KeysAsymDeletesPost200Response'), require('../model/KmsV2KeysAsymGet200Response'), require('../model/KmsV2KeysAsymPost201Response')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.AsymmetricKeyManagementApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateP12KeysRequest, root.CyberSource.DeleteBulkP12KeysRequest, root.CyberSource.InlineResponse4002, root.CyberSource.KmsV2KeysAsymDeletesPost200Response, root.CyberSource.KmsV2KeysAsymGet200Response, root.CyberSource.KmsV2KeysAsymPost201Response, root.CyberSource.PtsV2PaymentsPost502Response); + root.CyberSource.AsymmetricKeyManagementApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateP12KeysRequest, root.CyberSource.DeleteBulkP12KeysRequest, root.CyberSource.InlineResponse4002, root.CyberSource.InlineResponse502, root.CyberSource.KmsV2KeysAsymDeletesPost200Response, root.CyberSource.KmsV2KeysAsymGet200Response, root.CyberSource.KmsV2KeysAsymPost201Response); } -}(this, function(ApiClient, CreateP12KeysRequest, DeleteBulkP12KeysRequest, InlineResponse4002, KmsV2KeysAsymDeletesPost200Response, KmsV2KeysAsymGet200Response, KmsV2KeysAsymPost201Response, PtsV2PaymentsPost502Response) { +}(this, function(ApiClient, CreateP12KeysRequest, DeleteBulkP12KeysRequest, InlineResponse4002, InlineResponse502, KmsV2KeysAsymDeletesPost200Response, KmsV2KeysAsymGet200Response, KmsV2KeysAsymPost201Response) { 'use strict'; /** @@ -58,8 +58,8 @@ */ /** - * Create one or more PKCS#12 keys - * 'Create one or more PKCS#12 keys' + * Create one or more PKCS12 keys + * 'Create one or more PKCS12 keys' * @param {module:model/CreateP12KeysRequest} createP12KeysRequest * @param {module:api/AsymmetricKeyManagementApi~createP12KeysCallback} callback The callback function, accepting three arguments: error, data, response * data is of type: {@link module:model/KmsV2KeysAsymPost201Response} @@ -103,8 +103,8 @@ */ /** - * Delete one or more PKCS#12 keys - * 'Delete one or more PKCS#12 keys' + * Delete one or more PKCS12 keys + * 'Delete one or more PKCS12 keys' * @param {module:model/DeleteBulkP12KeysRequest} deleteBulkP12KeysRequest * @param {module:api/AsymmetricKeyManagementApi~deleteBulkP12KeysCallback} callback The callback function, accepting three arguments: error, data, response * data is of type: {@link module:model/KmsV2KeysAsymDeletesPost200Response} @@ -148,7 +148,7 @@ */ /** - * Retrieves PKCS#12 key details + * Retrieves PKCS12 key details * Retrieves keys details by providing the key id. * @param {String} keyId Key ID. * @param {module:api/AsymmetricKeyManagementApi~getP12KeyDetailsCallback} callback The callback function, accepting three arguments: error, data, response diff --git a/src/api/SecureFileShareApi.js b/src/api/SecureFileShareApi.js index 565d4bec..1d6a56af 100644 --- a/src/api/SecureFileShareApi.js +++ b/src/api/SecureFileShareApi.js @@ -90,7 +90,7 @@ }; var authNames = []; - var contentTypes = ['*/*;charset=utf-8']; + var contentTypes = ['*/*']; var accepts = ['application/xml', 'text/csv', 'application/pdf']; var returnType = null; @@ -152,7 +152,7 @@ }; var authNames = []; - var contentTypes = ['*/*;charset=utf-8']; + var contentTypes = ['*/*']; var accepts = ['application/hal+json']; var returnType = V1FileDetailsGet200Response; diff --git a/src/api/SymmetricKeyManagementApi.js b/src/api/SymmetricKeyManagementApi.js index ccb94f65..1c6e530d 100644 --- a/src/api/SymmetricKeyManagementApi.js +++ b/src/api/SymmetricKeyManagementApi.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/CreateSharedSecretKeysRequest', 'model/CreateSharedSecretKeysVerifiRequest', 'model/DeleteBulkSymmetricKeysRequest', 'model/InlineResponse4002', 'model/KmsV2KeysSymDeletesPost200Response', 'model/KmsV2KeysSymGet200Response', 'model/KmsV2KeysSymPost201Response', 'model/PtsV2PaymentsPost502Response'], factory); + define(['ApiClient', 'model/CreateSharedSecretKeysRequest', 'model/CreateSharedSecretKeysVerifiRequest', 'model/DeleteBulkSymmetricKeysRequest', 'model/InlineResponse4002', 'model/InlineResponse502', 'model/KmsV2KeysSymDeletesPost200Response', 'model/KmsV2KeysSymGet200Response', 'model/KmsV2KeysSymPost201Response'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('../model/CreateSharedSecretKeysRequest'), require('../model/CreateSharedSecretKeysVerifiRequest'), require('../model/DeleteBulkSymmetricKeysRequest'), require('../model/InlineResponse4002'), require('../model/KmsV2KeysSymDeletesPost200Response'), require('../model/KmsV2KeysSymGet200Response'), require('../model/KmsV2KeysSymPost201Response'), require('../model/PtsV2PaymentsPost502Response')); + module.exports = factory(require('../ApiClient'), require('../model/CreateSharedSecretKeysRequest'), require('../model/CreateSharedSecretKeysVerifiRequest'), require('../model/DeleteBulkSymmetricKeysRequest'), require('../model/InlineResponse4002'), require('../model/InlineResponse502'), require('../model/KmsV2KeysSymDeletesPost200Response'), require('../model/KmsV2KeysSymGet200Response'), require('../model/KmsV2KeysSymPost201Response')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.SymmetricKeyManagementApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateSharedSecretKeysRequest, root.CyberSource.CreateSharedSecretKeysVerifiRequest, root.CyberSource.DeleteBulkSymmetricKeysRequest, root.CyberSource.InlineResponse4002, root.CyberSource.KmsV2KeysSymDeletesPost200Response, root.CyberSource.KmsV2KeysSymGet200Response, root.CyberSource.KmsV2KeysSymPost201Response, root.CyberSource.PtsV2PaymentsPost502Response); + root.CyberSource.SymmetricKeyManagementApi = factory(root.CyberSource.ApiClient, root.CyberSource.CreateSharedSecretKeysRequest, root.CyberSource.CreateSharedSecretKeysVerifiRequest, root.CyberSource.DeleteBulkSymmetricKeysRequest, root.CyberSource.InlineResponse4002, root.CyberSource.InlineResponse502, root.CyberSource.KmsV2KeysSymDeletesPost200Response, root.CyberSource.KmsV2KeysSymGet200Response, root.CyberSource.KmsV2KeysSymPost201Response); } -}(this, function(ApiClient, CreateSharedSecretKeysRequest, CreateSharedSecretKeysVerifiRequest, DeleteBulkSymmetricKeysRequest, InlineResponse4002, KmsV2KeysSymDeletesPost200Response, KmsV2KeysSymGet200Response, KmsV2KeysSymPost201Response, PtsV2PaymentsPost502Response) { +}(this, function(ApiClient, CreateSharedSecretKeysRequest, CreateSharedSecretKeysVerifiRequest, DeleteBulkSymmetricKeysRequest, InlineResponse4002, InlineResponse502, KmsV2KeysSymDeletesPost200Response, KmsV2KeysSymGet200Response, KmsV2KeysSymPost201Response) { 'use strict'; /** diff --git a/src/index.js b/src/index.js index 734eca09..19d00859 100644 --- a/src/index.js +++ b/src/index.js @@ -16,12 +16,12 @@ (function(factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/AddNegativeListRequest', 'model/AuthReversalRequest', 'model/CapturePaymentRequest', 'model/CheckPayerAuthEnrollmentRequest', 'model/CreateAdhocReportRequest', 'model/CreateBundledDecisionManagerCaseRequest', 'model/CreateCreditRequest', 'model/CreateInvoiceRequest', 'model/CreateP12KeysRequest', 'model/CreatePaymentRequest', 'model/CreateReportSubscriptionRequest', 'model/CreateSearchRequest', 'model/CreateSharedSecretKeysRequest', 'model/CreateSharedSecretKeysVerifiRequest', 'model/DeleteBulkP12KeysRequest', 'model/DeleteBulkSymmetricKeysRequest', 'model/FlexV1KeysPost200Response', 'model/FlexV1KeysPost200ResponseDer', 'model/FlexV1KeysPost200ResponseJwk', 'model/FlexV1TokensPost200Response', 'model/Flexv1tokensCardInfo', 'model/FraudMarkingActionRequest', 'model/GeneratePublicKeyRequest', 'model/IncrementAuthRequest', 'model/InlineResponse400', 'model/InlineResponse4001', 'model/InlineResponse4001Fields', 'model/InlineResponse4002', 'model/InlineResponse400Details', 'model/InlineResponse400Errors', 'model/InlineResponseDefault', 'model/InlineResponseDefaultLinks', 'model/InlineResponseDefaultLinksNext', 'model/InlineResponseDefaultResponseStatus', 'model/InlineResponseDefaultResponseStatusDetails', 'model/InvoiceSettingsRequest', 'model/InvoicingV2InvoiceSettingsGet200Response', 'model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformation', 'model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformationHeaderStyle', 'model/InvoicingV2InvoicesAllGet200Response', 'model/InvoicingV2InvoicesAllGet200ResponseCustomerInformation', 'model/InvoicingV2InvoicesAllGet200ResponseInvoiceInformation', 'model/InvoicingV2InvoicesAllGet200ResponseInvoices', 'model/InvoicingV2InvoicesAllGet200ResponseLinks', 'model/InvoicingV2InvoicesAllGet200ResponseLinks1', 'model/InvoicingV2InvoicesAllGet200ResponseOrderInformation', 'model/InvoicingV2InvoicesAllGet200ResponseOrderInformationAmountDetails', 'model/InvoicingV2InvoicesAllGet400Response', 'model/InvoicingV2InvoicesAllGet404Response', 'model/InvoicingV2InvoicesAllGet502Response', 'model/InvoicingV2InvoicesGet200Response', 'model/InvoicingV2InvoicesGet200ResponseInvoiceHistory', 'model/InvoicingV2InvoicesGet200ResponseTransactionDetails', 'model/InvoicingV2InvoicesPost201Response', 'model/InvoicingV2InvoicesPost201ResponseInvoiceInformation', 'model/InvoicingV2InvoicesPost201ResponseOrderInformation', 'model/InvoicingV2InvoicesPost201ResponseOrderInformationAmountDetails', 'model/InvoicingV2InvoicesPost202Response', 'model/Invoicingv2invoiceSettingsInvoiceSettingsInformation', 'model/Invoicingv2invoicesCustomerInformation', 'model/Invoicingv2invoicesInvoiceInformation', 'model/Invoicingv2invoicesOrderInformation', 'model/Invoicingv2invoicesOrderInformationAmountDetails', 'model/Invoicingv2invoicesOrderInformationAmountDetailsFreight', 'model/Invoicingv2invoicesOrderInformationAmountDetailsTaxDetails', 'model/Invoicingv2invoicesOrderInformationLineItems', 'model/Invoicingv2invoicesidInvoiceInformation', 'model/KmsV2KeysAsymDeletesPost200Response', 'model/KmsV2KeysAsymDeletesPost200ResponseKeyInformation', 'model/KmsV2KeysAsymGet200Response', 'model/KmsV2KeysAsymGet200ResponseKeyInformation', 'model/KmsV2KeysAsymPost201Response', 'model/KmsV2KeysAsymPost201ResponseCertificateInformation', 'model/KmsV2KeysAsymPost201ResponseKeyInformation', 'model/KmsV2KeysSymDeletesPost200Response', 'model/KmsV2KeysSymDeletesPost200ResponseKeyInformation', 'model/KmsV2KeysSymGet200Response', 'model/KmsV2KeysSymGet200ResponseKeyInformation', 'model/KmsV2KeysSymPost201Response', 'model/KmsV2KeysSymPost201ResponseErrorInformation', 'model/KmsV2KeysSymPost201ResponseKeyInformation', 'model/Kmsv2keysasymKeyInformation', 'model/Kmsv2keyssymClientReferenceInformation', 'model/Kmsv2keyssymKeyInformation', 'model/Kmsv2keyssymdeletesKeyInformation', 'model/Kmsv2keyssymverifiKeyInformation', 'model/MitReversalRequest', 'model/MitVoidRequest', 'model/OctCreatePaymentRequest', 'model/PatchCustomerPaymentInstrumentRequest', 'model/PatchCustomerRequest', 'model/PatchCustomerShippingAddressRequest', 'model/PatchInstrumentIdentifierRequest', 'model/PatchPaymentInstrumentRequest', 'model/PayerAuthSetupRequest', 'model/PaymentInstrumentList', 'model/PaymentInstrumentListEmbedded', 'model/PaymentInstrumentListLinks', 'model/PaymentInstrumentListLinksFirst', 'model/PaymentInstrumentListLinksLast', 'model/PaymentInstrumentListLinksNext', 'model/PaymentInstrumentListLinksPrev', 'model/PaymentInstrumentListLinksSelf', 'model/PostCustomerPaymentInstrumentRequest', 'model/PostCustomerRequest', 'model/PostCustomerShippingAddressRequest', 'model/PostInstrumentIdentifierEnrollmentRequest', 'model/PostInstrumentIdentifierRequest', 'model/PostPaymentInstrumentRequest', 'model/PredefinedSubscriptionRequestBean', 'model/PtsV1TransactionBatchesGet200Response', 'model/PtsV1TransactionBatchesGet200ResponseLinks', 'model/PtsV1TransactionBatchesGet200ResponseLinksSelf', 'model/PtsV1TransactionBatchesGet200ResponseTransactionBatches', 'model/PtsV1TransactionBatchesGet400Response', 'model/PtsV1TransactionBatchesGet400ResponseErrorInformation', 'model/PtsV1TransactionBatchesGet400ResponseErrorInformationDetails', 'model/PtsV1TransactionBatchesGet500Response', 'model/PtsV1TransactionBatchesGet500ResponseErrorInformation', 'model/PtsV1TransactionBatchesIdGet200Response', 'model/PtsV1TransactionBatchesIdGet200ResponseLinks', 'model/PtsV1TransactionBatchesIdGet200ResponseLinksTransactions', 'model/PtsV2CreditsPost201Response', 'model/PtsV2CreditsPost201ResponseCreditAmountDetails', 'model/PtsV2CreditsPost201ResponsePaymentInformation', 'model/PtsV2CreditsPost201ResponseProcessingInformation', 'model/PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions', 'model/PtsV2IncrementalAuthorizationPatch201Response', 'model/PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponseErrorInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponseLinks', 'model/PtsV2IncrementalAuthorizationPatch201ResponseOrderInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformationAccountFeatures', 'model/PtsV2IncrementalAuthorizationPatch201ResponseProcessorInformation', 'model/PtsV2IncrementalAuthorizationPatch400Response', 'model/PtsV2PaymentsCapturesPost201Response', 'model/PtsV2PaymentsCapturesPost201ResponseLinks', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformation', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformationInvoiceDetails', 'model/PtsV2PaymentsCapturesPost201ResponsePointOfSaleInformation', 'model/PtsV2PaymentsCapturesPost201ResponseProcessingInformation', 'model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation', 'model/PtsV2PaymentsCapturesPost400Response', 'model/PtsV2PaymentsPost201Response', 'model/PtsV2PaymentsPost201ResponseBuyerInformation', 'model/PtsV2PaymentsPost201ResponseClientReferenceInformation', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformationDetails', 'model/PtsV2PaymentsPost201ResponseInstallmentInformation', 'model/PtsV2PaymentsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsPost201ResponseLinks', 'model/PtsV2PaymentsPost201ResponseLinksSelf', 'model/PtsV2PaymentsPost201ResponseOrderInformation', 'model/PtsV2PaymentsPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails', 'model/PtsV2PaymentsPost201ResponseOrderInformationRewardPointsDetails', 'model/PtsV2PaymentsPost201ResponsePaymentAccountInformation', 'model/PtsV2PaymentsPost201ResponsePaymentAccountInformationCard', 'model/PtsV2PaymentsPost201ResponsePaymentInformation', 'model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures', 'model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBank', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount', 'model/PtsV2PaymentsPost201ResponsePaymentInformationInstrumentIdentifier', 'model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard', 'model/PtsV2PaymentsPost201ResponsePaymentInsightsInformation', 'model/PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights', 'model/PtsV2PaymentsPost201ResponsePointOfSaleInformation', 'model/PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv', 'model/PtsV2PaymentsPost201ResponseProcessingInformation', 'model/PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions', 'model/PtsV2PaymentsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsPost201ResponseProcessorInformationAchVerification', 'model/PtsV2PaymentsPost201ResponseProcessorInformationAvs', 'model/PtsV2PaymentsPost201ResponseProcessorInformationCardVerification', 'model/PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse', 'model/PtsV2PaymentsPost201ResponseProcessorInformationCustomer', 'model/PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults', 'model/PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice', 'model/PtsV2PaymentsPost201ResponseProcessorInformationRouting', 'model/PtsV2PaymentsPost201ResponseRiskInformation', 'model/PtsV2PaymentsPost201ResponseRiskInformationInfoCodes', 'model/PtsV2PaymentsPost201ResponseRiskInformationIpAddress', 'model/PtsV2PaymentsPost201ResponseRiskInformationProfile', 'model/PtsV2PaymentsPost201ResponseRiskInformationProviders', 'model/PtsV2PaymentsPost201ResponseRiskInformationProvidersProviderName', 'model/PtsV2PaymentsPost201ResponseRiskInformationRules', 'model/PtsV2PaymentsPost201ResponseRiskInformationScore', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravel', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelActualFinalDestination', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDeparture', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDestination', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelLastDestination', 'model/PtsV2PaymentsPost201ResponseRiskInformationVelocity', 'model/PtsV2PaymentsPost201ResponseRiskInformationVelocityMorphing', 'model/PtsV2PaymentsPost201ResponseTokenInformation', 'model/PtsV2PaymentsPost201ResponseTokenInformationCustomer', 'model/PtsV2PaymentsPost201ResponseTokenInformationInstrumentIdentifier', 'model/PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument', 'model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress', 'model/PtsV2PaymentsPost400Response', 'model/PtsV2PaymentsPost502Response', 'model/PtsV2PaymentsRefundPost201Response', 'model/PtsV2PaymentsRefundPost201ResponseLinks', 'model/PtsV2PaymentsRefundPost201ResponseOrderInformation', 'model/PtsV2PaymentsRefundPost201ResponseProcessorInformation', 'model/PtsV2PaymentsRefundPost201ResponseRefundAmountDetails', 'model/PtsV2PaymentsRefundPost400Response', 'model/PtsV2PaymentsReversalsPost201Response', 'model/PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation', 'model/PtsV2PaymentsReversalsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails', 'model/PtsV2PaymentsReversalsPost400Response', 'model/PtsV2PaymentsVoidsPost201Response', 'model/PtsV2PaymentsVoidsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails', 'model/PtsV2PaymentsVoidsPost400Response', 'model/PtsV2PayoutsPost201Response', 'model/PtsV2PayoutsPost201ResponseErrorInformation', 'model/PtsV2PayoutsPost201ResponseMerchantInformation', 'model/PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor', 'model/PtsV2PayoutsPost201ResponseOrderInformation', 'model/PtsV2PayoutsPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PayoutsPost201ResponseProcessorInformation', 'model/PtsV2PayoutsPost201ResponseRecipientInformation', 'model/PtsV2PayoutsPost201ResponseRecipientInformationCard', 'model/PtsV2PayoutsPost400Response', 'model/Ptsv2creditsInstallmentInformation', 'model/Ptsv2creditsProcessingInformation', 'model/Ptsv2creditsProcessingInformationBankTransferOptions', 'model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2creditsProcessingInformationJapanPaymentOptions', 'model/Ptsv2creditsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsAcquirerInformation', 'model/Ptsv2paymentsAggregatorInformation', 'model/Ptsv2paymentsAggregatorInformationSubMerchant', 'model/Ptsv2paymentsBuyerInformation', 'model/Ptsv2paymentsBuyerInformationPersonalIdentification', 'model/Ptsv2paymentsClientReferenceInformation', 'model/Ptsv2paymentsClientReferenceInformationPartner', 'model/Ptsv2paymentsConsumerAuthenticationInformation', 'model/Ptsv2paymentsConsumerAuthenticationInformationStrongAuthentication', 'model/Ptsv2paymentsDeviceInformation', 'model/Ptsv2paymentsDeviceInformationRawData', 'model/Ptsv2paymentsHealthCareInformation', 'model/Ptsv2paymentsHealthCareInformationAmountDetails', 'model/Ptsv2paymentsInstallmentInformation', 'model/Ptsv2paymentsInvoiceDetails', 'model/Ptsv2paymentsIssuerInformation', 'model/Ptsv2paymentsMerchantDefinedInformation', 'model/Ptsv2paymentsMerchantInformation', 'model/Ptsv2paymentsMerchantInformationMerchantDescriptor', 'model/Ptsv2paymentsMerchantInformationServiceFeeDescriptor', 'model/Ptsv2paymentsOrderInformation', 'model/Ptsv2paymentsOrderInformationAmountDetails', 'model/Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts', 'model/Ptsv2paymentsOrderInformationAmountDetailsCurrencyConversion', 'model/Ptsv2paymentsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails', 'model/Ptsv2paymentsOrderInformationBillTo', 'model/Ptsv2paymentsOrderInformationBillToCompany', 'model/Ptsv2paymentsOrderInformationInvoiceDetails', 'model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum', 'model/Ptsv2paymentsOrderInformationLineItems', 'model/Ptsv2paymentsOrderInformationPassenger', 'model/Ptsv2paymentsOrderInformationShipTo', 'model/Ptsv2paymentsOrderInformationShippingDetails', 'model/Ptsv2paymentsPaymentInformation', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationBankAccount', 'model/Ptsv2paymentsPaymentInformationCard', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationEWallet', 'model/Ptsv2paymentsPaymentInformationFluidData', 'model/Ptsv2paymentsPaymentInformationInstrumentIdentifier', 'model/Ptsv2paymentsPaymentInformationLegacyToken', 'model/Ptsv2paymentsPaymentInformationPaymentInstrument', 'model/Ptsv2paymentsPaymentInformationPaymentType', 'model/Ptsv2paymentsPaymentInformationPaymentTypeMethod', 'model/Ptsv2paymentsPaymentInformationShippingAddress', 'model/Ptsv2paymentsPaymentInformationTokenizedCard', 'model/Ptsv2paymentsPointOfSaleInformation', 'model/Ptsv2paymentsPointOfSaleInformationEmv', 'model/Ptsv2paymentsProcessingInformation', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Ptsv2paymentsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsProcessingInformationCaptureOptions', 'model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2paymentsProcessingInformationJapanPaymentOptions', 'model/Ptsv2paymentsProcessingInformationLoanOptions', 'model/Ptsv2paymentsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsProcessingInformationRecurringOptions', 'model/Ptsv2paymentsProcessorInformation', 'model/Ptsv2paymentsProcessorInformationAuthorizationOptions', 'model/Ptsv2paymentsPromotionInformation', 'model/Ptsv2paymentsRecipientInformation', 'model/Ptsv2paymentsRecurringPaymentInformation', 'model/Ptsv2paymentsRiskInformation', 'model/Ptsv2paymentsRiskInformationAuxiliaryData', 'model/Ptsv2paymentsRiskInformationBuyerHistory', 'model/Ptsv2paymentsRiskInformationBuyerHistoryAccountHistory', 'model/Ptsv2paymentsRiskInformationBuyerHistoryCustomerAccount', 'model/Ptsv2paymentsRiskInformationProfile', 'model/Ptsv2paymentsTokenInformation', 'model/Ptsv2paymentsTokenInformationPaymentInstrument', 'model/Ptsv2paymentsTokenInformationShippingAddress', 'model/Ptsv2paymentsTravelInformation', 'model/Ptsv2paymentsTravelInformationAgency', 'model/Ptsv2paymentsTravelInformationAutoRental', 'model/Ptsv2paymentsTravelInformationAutoRentalRentalAddress', 'model/Ptsv2paymentsTravelInformationAutoRentalReturnAddress', 'model/Ptsv2paymentsTravelInformationAutoRentalTaxDetails', 'model/Ptsv2paymentsTravelInformationLodging', 'model/Ptsv2paymentsTravelInformationLodgingRoom', 'model/Ptsv2paymentsTravelInformationTransit', 'model/Ptsv2paymentsTravelInformationTransitAirline', 'model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformation', 'model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformationService', 'model/Ptsv2paymentsTravelInformationTransitAirlineLegs', 'model/Ptsv2paymentsTravelInformationTransitAirlineTicketIssuer', 'model/Ptsv2paymentsidClientReferenceInformation', 'model/Ptsv2paymentsidClientReferenceInformationPartner', 'model/Ptsv2paymentsidMerchantInformation', 'model/Ptsv2paymentsidOrderInformation', 'model/Ptsv2paymentsidOrderInformationAmountDetails', 'model/Ptsv2paymentsidProcessingInformation', 'model/Ptsv2paymentsidProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsidProcessingInformationAuthorizationOptionsInitiator', 'model/Ptsv2paymentsidTravelInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant', 'model/Ptsv2paymentsidcapturesBuyerInformation', 'model/Ptsv2paymentsidcapturesDeviceInformation', 'model/Ptsv2paymentsidcapturesInstallmentInformation', 'model/Ptsv2paymentsidcapturesMerchantInformation', 'model/Ptsv2paymentsidcapturesOrderInformation', 'model/Ptsv2paymentsidcapturesOrderInformationAmountDetails', 'model/Ptsv2paymentsidcapturesOrderInformationBillTo', 'model/Ptsv2paymentsidcapturesOrderInformationInvoiceDetails', 'model/Ptsv2paymentsidcapturesOrderInformationShipTo', 'model/Ptsv2paymentsidcapturesOrderInformationShippingDetails', 'model/Ptsv2paymentsidcapturesPaymentInformation', 'model/Ptsv2paymentsidcapturesPaymentInformationCard', 'model/Ptsv2paymentsidcapturesPointOfSaleInformation', 'model/Ptsv2paymentsidcapturesPointOfSaleInformationEmv', 'model/Ptsv2paymentsidcapturesProcessingInformation', 'model/Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsidcapturesProcessingInformationCaptureOptions', 'model/Ptsv2paymentsidrefundsMerchantInformation', 'model/Ptsv2paymentsidrefundsOrderInformation', 'model/Ptsv2paymentsidrefundsOrderInformationLineItems', 'model/Ptsv2paymentsidrefundsPaymentInformation', 'model/Ptsv2paymentsidrefundsPaymentInformationBank', 'model/Ptsv2paymentsidrefundsPaymentInformationCard', 'model/Ptsv2paymentsidrefundsPointOfSaleInformation', 'model/Ptsv2paymentsidrefundsProcessingInformation', 'model/Ptsv2paymentsidrefundsProcessingInformationRecurringOptions', 'model/Ptsv2paymentsidreversalsClientReferenceInformation', 'model/Ptsv2paymentsidreversalsClientReferenceInformationPartner', 'model/Ptsv2paymentsidreversalsOrderInformation', 'model/Ptsv2paymentsidreversalsOrderInformationAmountDetails', 'model/Ptsv2paymentsidreversalsOrderInformationLineItems', 'model/Ptsv2paymentsidreversalsPointOfSaleInformation', 'model/Ptsv2paymentsidreversalsPointOfSaleInformationEmv', 'model/Ptsv2paymentsidreversalsProcessingInformation', 'model/Ptsv2paymentsidreversalsReversalInformation', 'model/Ptsv2paymentsidreversalsReversalInformationAmountDetails', 'model/Ptsv2paymentsidvoidsOrderInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation', 'model/Ptsv2payoutsClientReferenceInformation', 'model/Ptsv2payoutsMerchantInformation', 'model/Ptsv2payoutsMerchantInformationMerchantDescriptor', 'model/Ptsv2payoutsOrderInformation', 'model/Ptsv2payoutsOrderInformationAmountDetails', 'model/Ptsv2payoutsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2payoutsOrderInformationBillTo', 'model/Ptsv2payoutsPaymentInformation', 'model/Ptsv2payoutsPaymentInformationCard', 'model/Ptsv2payoutsProcessingInformation', 'model/Ptsv2payoutsProcessingInformationFundingOptions', 'model/Ptsv2payoutsProcessingInformationFundingOptionsInitiator', 'model/Ptsv2payoutsProcessingInformationPayoutsOptions', 'model/Ptsv2payoutsRecipientInformation', 'model/Ptsv2payoutsSenderInformation', 'model/Ptsv2payoutsSenderInformationAccount', 'model/RefundCaptureRequest', 'model/RefundPaymentRequest', 'model/ReportingV3ChargebackDetailsGet200Response', 'model/ReportingV3ChargebackDetailsGet200ResponseChargebackDetails', 'model/ReportingV3ChargebackSummariesGet200Response', 'model/ReportingV3ChargebackSummariesGet200ResponseChargebackSummaries', 'model/ReportingV3ConversionDetailsGet200Response', 'model/ReportingV3ConversionDetailsGet200ResponseConversionDetails', 'model/ReportingV3ConversionDetailsGet200ResponseNotes', 'model/ReportingV3InterchangeClearingLevelDetailsGet200Response', 'model/ReportingV3InterchangeClearingLevelDetailsGet200ResponseInterchangeClearingLevelDetails', 'model/ReportingV3NetFundingsGet200Response', 'model/ReportingV3NetFundingsGet200ResponseNetFundingSummaries', 'model/ReportingV3NetFundingsGet200ResponseTotalPurchases', 'model/ReportingV3NotificationofChangesGet200Response', 'model/ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges', 'model/ReportingV3PaymentBatchSummariesGet200Response', 'model/ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries', 'model/ReportingV3PurchaseRefundDetailsGet200Response', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseOthers', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlements', 'model/ReportingV3ReportDefinitionsGet200Response', 'model/ReportingV3ReportDefinitionsGet200ResponseReportDefinitions', 'model/ReportingV3ReportDefinitionsNameGet200Response', 'model/ReportingV3ReportDefinitionsNameGet200ResponseAttributes', 'model/ReportingV3ReportDefinitionsNameGet200ResponseDefaultSettings', 'model/ReportingV3ReportSubscriptionsGet200Response', 'model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions', 'model/ReportingV3ReportsGet200Response', 'model/ReportingV3ReportsGet200ResponseLink', 'model/ReportingV3ReportsGet200ResponseLinkReportDownload', 'model/ReportingV3ReportsGet200ResponseReportSearchResults', 'model/ReportingV3ReportsIdGet200Response', 'model/ReportingV3RetrievalDetailsGet200Response', 'model/ReportingV3RetrievalDetailsGet200ResponseRetrievalDetails', 'model/ReportingV3RetrievalSummariesGet200Response', 'model/Reportingv3ReportDownloadsGet400Response', 'model/Reportingv3ReportDownloadsGet400ResponseDetails', 'model/Reportingv3reportsReportFilters', 'model/Reportingv3reportsReportPreferences', 'model/RiskV1AddressVerificationsPost201Response', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddressAddress1', 'model/RiskV1AddressVerificationsPost201ResponseErrorInformation', 'model/RiskV1AuthenticationResultsPost201Response', 'model/RiskV1AuthenticationResultsPost201ResponseConsumerAuthenticationInformation', 'model/RiskV1AuthenticationSetupsPost201Response', 'model/RiskV1AuthenticationSetupsPost201ResponseConsumerAuthenticationInformation', 'model/RiskV1AuthenticationSetupsPost201ResponseErrorInformation', 'model/RiskV1AuthenticationsPost201Response', 'model/RiskV1AuthenticationsPost201ResponseErrorInformation', 'model/RiskV1AuthenticationsPost400Response', 'model/RiskV1AuthenticationsPost400Response1', 'model/RiskV1DecisionsPost201Response', 'model/RiskV1DecisionsPost201ResponseClientReferenceInformation', 'model/RiskV1DecisionsPost201ResponseConsumerAuthenticationInformation', 'model/RiskV1DecisionsPost201ResponseErrorInformation', 'model/RiskV1DecisionsPost201ResponseOrderInformation', 'model/RiskV1DecisionsPost201ResponseOrderInformationAmountDetails', 'model/RiskV1DecisionsPost201ResponsePaymentInformation', 'model/RiskV1DecisionsPost400Response', 'model/RiskV1DecisionsPost400Response1', 'model/RiskV1ExportComplianceInquiriesPost201Response', 'model/RiskV1ExportComplianceInquiriesPost201ResponseErrorInformation', 'model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformation', 'model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchList', 'model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchListMatches', 'model/RiskV1UpdatePost201Response', 'model/Riskv1addressverificationsBuyerInformation', 'model/Riskv1addressverificationsOrderInformation', 'model/Riskv1addressverificationsOrderInformationBillTo', 'model/Riskv1addressverificationsOrderInformationLineItems', 'model/Riskv1addressverificationsOrderInformationShipTo', 'model/Riskv1authenticationresultsConsumerAuthenticationInformation', 'model/Riskv1authenticationresultsDeviceInformation', 'model/Riskv1authenticationresultsOrderInformation', 'model/Riskv1authenticationresultsOrderInformationAmountDetails', 'model/Riskv1authenticationresultsOrderInformationLineItems', 'model/Riskv1authenticationresultsPaymentInformation', 'model/Riskv1authenticationresultsPaymentInformationCard', 'model/Riskv1authenticationresultsPaymentInformationFluidData', 'model/Riskv1authenticationresultsPaymentInformationTokenizedCard', 'model/Riskv1authenticationsBuyerInformation', 'model/Riskv1authenticationsDeviceInformation', 'model/Riskv1authenticationsOrderInformation', 'model/Riskv1authenticationsOrderInformationAmountDetails', 'model/Riskv1authenticationsOrderInformationBillTo', 'model/Riskv1authenticationsOrderInformationLineItems', 'model/Riskv1authenticationsPaymentInformation', 'model/Riskv1authenticationsPaymentInformationCard', 'model/Riskv1authenticationsPaymentInformationTokenizedCard', 'model/Riskv1authenticationsRiskInformation', 'model/Riskv1authenticationsTravelInformation', 'model/Riskv1authenticationsetupsPaymentInformation', 'model/Riskv1authenticationsetupsPaymentInformationCard', 'model/Riskv1authenticationsetupsPaymentInformationCustomer', 'model/Riskv1authenticationsetupsPaymentInformationFluidData', 'model/Riskv1authenticationsetupsPaymentInformationTokenizedCard', 'model/Riskv1authenticationsetupsProcessingInformation', 'model/Riskv1authenticationsetupsTokenInformation', 'model/Riskv1decisionsBuyerInformation', 'model/Riskv1decisionsClientReferenceInformation', 'model/Riskv1decisionsClientReferenceInformationPartner', 'model/Riskv1decisionsConsumerAuthenticationInformation', 'model/Riskv1decisionsConsumerAuthenticationInformationStrongAuthentication', 'model/Riskv1decisionsDeviceInformation', 'model/Riskv1decisionsMerchantDefinedInformation', 'model/Riskv1decisionsMerchantInformation', 'model/Riskv1decisionsMerchantInformationMerchantDescriptor', 'model/Riskv1decisionsOrderInformation', 'model/Riskv1decisionsOrderInformationAmountDetails', 'model/Riskv1decisionsOrderInformationBillTo', 'model/Riskv1decisionsOrderInformationLineItems', 'model/Riskv1decisionsOrderInformationShipTo', 'model/Riskv1decisionsOrderInformationShippingDetails', 'model/Riskv1decisionsPaymentInformation', 'model/Riskv1decisionsPaymentInformationCard', 'model/Riskv1decisionsPaymentInformationTokenizedCard', 'model/Riskv1decisionsProcessingInformation', 'model/Riskv1decisionsProcessorInformation', 'model/Riskv1decisionsProcessorInformationAvs', 'model/Riskv1decisionsProcessorInformationCardVerification', 'model/Riskv1decisionsRiskInformation', 'model/Riskv1decisionsTravelInformation', 'model/Riskv1decisionsTravelInformationLegs', 'model/Riskv1decisionsTravelInformationPassengers', 'model/Riskv1decisionsidmarkingRiskInformation', 'model/Riskv1decisionsidmarkingRiskInformationMarkingDetails', 'model/Riskv1exportcomplianceinquiriesDeviceInformation', 'model/Riskv1exportcomplianceinquiriesExportComplianceInformation', 'model/Riskv1exportcomplianceinquiriesExportComplianceInformationWeights', 'model/Riskv1exportcomplianceinquiriesOrderInformation', 'model/Riskv1exportcomplianceinquiriesOrderInformationBillTo', 'model/Riskv1exportcomplianceinquiriesOrderInformationBillToCompany', 'model/Riskv1exportcomplianceinquiriesOrderInformationLineItems', 'model/Riskv1exportcomplianceinquiriesOrderInformationShipTo', 'model/Riskv1liststypeentriesBuyerInformation', 'model/Riskv1liststypeentriesClientReferenceInformation', 'model/Riskv1liststypeentriesDeviceInformation', 'model/Riskv1liststypeentriesOrderInformation', 'model/Riskv1liststypeentriesOrderInformationAddress', 'model/Riskv1liststypeentriesOrderInformationBillTo', 'model/Riskv1liststypeentriesOrderInformationLineItems', 'model/Riskv1liststypeentriesOrderInformationShipTo', 'model/Riskv1liststypeentriesPaymentInformation', 'model/Riskv1liststypeentriesPaymentInformationBank', 'model/Riskv1liststypeentriesPaymentInformationCard', 'model/Riskv1liststypeentriesRiskInformation', 'model/Riskv1liststypeentriesRiskInformationMarkingDetails', 'model/SearchRequest', 'model/ShippingAddressListForCustomer', 'model/ShippingAddressListForCustomerEmbedded', 'model/ShippingAddressListForCustomerLinks', 'model/ShippingAddressListForCustomerLinksFirst', 'model/ShippingAddressListForCustomerLinksLast', 'model/ShippingAddressListForCustomerLinksNext', 'model/ShippingAddressListForCustomerLinksPrev', 'model/ShippingAddressListForCustomerLinksSelf', 'model/TaxRequest', 'model/TmsV2CustomersResponse', 'model/Tmsv2customersBuyerInformation', 'model/Tmsv2customersClientReferenceInformation', 'model/Tmsv2customersDefaultPaymentInstrument', 'model/Tmsv2customersDefaultShippingAddress', 'model/Tmsv2customersEmbedded', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrument', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBankAccount', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBillTo', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationIssuedBy', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationPersonalIdentification', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCardTokenizedInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbedded', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBillTo', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierIssuer', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinks', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksPaymentInstruments', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksSelf', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierMetadata', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptions', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiator', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCardCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentInstrumentIdentifier', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinks', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinksSelf', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformationMerchantDescriptor', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMetadata', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformationBankTransferOptions', 'model/Tmsv2customersEmbeddedDefaultShippingAddress', 'model/Tmsv2customersEmbeddedDefaultShippingAddressLinks', 'model/Tmsv2customersEmbeddedDefaultShippingAddressLinksCustomer', 'model/Tmsv2customersEmbeddedDefaultShippingAddressLinksSelf', 'model/Tmsv2customersEmbeddedDefaultShippingAddressMetadata', 'model/Tmsv2customersEmbeddedDefaultShippingAddressShipTo', 'model/Tmsv2customersLinks', 'model/Tmsv2customersLinksPaymentInstruments', 'model/Tmsv2customersLinksSelf', 'model/Tmsv2customersLinksShippingAddress', 'model/Tmsv2customersMerchantDefinedInformation', 'model/Tmsv2customersMetadata', 'model/Tmsv2customersObjectInformation', 'model/TokenizeRequest', 'model/TssV2TransactionsGet200Response', 'model/TssV2TransactionsGet200ResponseApplicationInformation', 'model/TssV2TransactionsGet200ResponseApplicationInformationApplications', 'model/TssV2TransactionsGet200ResponseBuyerInformation', 'model/TssV2TransactionsGet200ResponseClientReferenceInformation', 'model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner', 'model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation', 'model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication', 'model/TssV2TransactionsGet200ResponseDeviceInformation', 'model/TssV2TransactionsGet200ResponseErrorInformation', 'model/TssV2TransactionsGet200ResponseFraudMarkingInformation', 'model/TssV2TransactionsGet200ResponseInstallmentInformation', 'model/TssV2TransactionsGet200ResponseLinks', 'model/TssV2TransactionsGet200ResponseMerchantInformation', 'model/TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor', 'model/TssV2TransactionsGet200ResponseOrderInformation', 'model/TssV2TransactionsGet200ResponseOrderInformationAmountDetails', 'model/TssV2TransactionsGet200ResponseOrderInformationBillTo', 'model/TssV2TransactionsGet200ResponseOrderInformationInvoiceDetails', 'model/TssV2TransactionsGet200ResponseOrderInformationLineItems', 'model/TssV2TransactionsGet200ResponseOrderInformationShipTo', 'model/TssV2TransactionsGet200ResponseOrderInformationShippingDetails', 'model/TssV2TransactionsGet200ResponsePaymentInformation', 'model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures', 'model/TssV2TransactionsGet200ResponsePaymentInformationBank', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankAccount', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankMandate', 'model/TssV2TransactionsGet200ResponsePaymentInformationCard', 'model/TssV2TransactionsGet200ResponsePaymentInformationCustomer', 'model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier', 'model/TssV2TransactionsGet200ResponsePaymentInformationInvoice', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType', 'model/TssV2TransactionsGet200ResponsePointOfSaleInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions', 'model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptionsInitiator', 'model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions', 'model/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions', 'model/TssV2TransactionsGet200ResponseProcessorInformation', 'model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults', 'model/TssV2TransactionsGet200ResponseProcessorInformationMultiProcessorRouting', 'model/TssV2TransactionsGet200ResponseProcessorInformationProcessor', 'model/TssV2TransactionsGet200ResponseRiskInformation', 'model/TssV2TransactionsGet200ResponseRiskInformationProfile', 'model/TssV2TransactionsGet200ResponseRiskInformationRules', 'model/TssV2TransactionsGet200ResponseRiskInformationScore', 'model/TssV2TransactionsGet200ResponseSenderInformation', 'model/TssV2TransactionsGet200ResponseTokenInformation', 'model/TssV2TransactionsPost201Response', 'model/TssV2TransactionsPost201ResponseEmbedded', 'model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformationApplications', 'model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedLinks', 'model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBank', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBankAccount', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCustomer', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType', 'model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner', 'model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedProcessorInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedRiskInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders', 'model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint', 'model/TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries', 'model/TssV2TransactionsPost400Response', 'model/UmsV1UsersGet200Response', 'model/UmsV1UsersGet200ResponseAccountInformation', 'model/UmsV1UsersGet200ResponseContactInformation', 'model/UmsV1UsersGet200ResponseOrganizationInformation', 'model/UmsV1UsersGet200ResponseUsers', 'model/UpdateInvoiceRequest', 'model/V1FileDetailsGet200Response', 'model/V1FileDetailsGet200ResponseFileDetails', 'model/V1FileDetailsGet200ResponseLinks', 'model/V1FileDetailsGet200ResponseLinksFiles', 'model/V1FileDetailsGet200ResponseLinksSelf', 'model/ValidateExportComplianceRequest', 'model/ValidateRequest', 'model/VasV2PaymentsPost201Response', 'model/VasV2PaymentsPost201ResponseLinks', 'model/VasV2PaymentsPost201ResponseOrderInformation', 'model/VasV2PaymentsPost201ResponseOrderInformationJurisdiction', 'model/VasV2PaymentsPost201ResponseOrderInformationLineItems', 'model/VasV2PaymentsPost201ResponseOrderInformationTaxDetails', 'model/VasV2PaymentsPost201ResponseTaxInformation', 'model/VasV2PaymentsPost400Response', 'model/VasV2TaxVoid200Response', 'model/VasV2TaxVoid200ResponseVoidAmountDetails', 'model/VasV2TaxVoidsPost400Response', 'model/Vasv2taxBuyerInformation', 'model/Vasv2taxClientReferenceInformation', 'model/Vasv2taxMerchantInformation', 'model/Vasv2taxOrderInformation', 'model/Vasv2taxOrderInformationBillTo', 'model/Vasv2taxOrderInformationInvoiceDetails', 'model/Vasv2taxOrderInformationLineItems', 'model/Vasv2taxOrderInformationOrderAcceptance', 'model/Vasv2taxOrderInformationOrderOrigin', 'model/Vasv2taxOrderInformationShipTo', 'model/Vasv2taxOrderInformationShippingDetails', 'model/Vasv2taxTaxInformation', 'model/Vasv2taxidClientReferenceInformation', 'model/Vasv2taxidClientReferenceInformationPartner', 'model/VerifyCustomerAddressRequest', 'model/VoidCaptureRequest', 'model/VoidCreditRequest', 'model/VoidPaymentRequest', 'model/VoidRefundRequest', 'model/VoidTaxRequest', 'model/AccessTokenResponse', 'model/BadRequestError', 'model/CreateAccessTokenRequest', 'model/ResourceNotFoundError', 'model/UnauthorizedClientError', 'api/AsymmetricKeyManagementApi', 'api/CaptureApi', 'api/ChargebackDetailsApi', 'api/ChargebackSummariesApi', 'api/ConversionDetailsApi', 'api/CreditApi', 'api/CustomerApi', 'api/CustomerPaymentInstrumentApi', 'api/CustomerShippingAddressApi', 'api/DecisionManagerApi', 'api/DownloadDTDApi', 'api/DownloadXSDApi', 'api/InstrumentIdentifierApi', 'api/InterchangeClearingLevelDetailsApi', 'api/InvoiceSettingsApi', 'api/InvoicesApi', 'api/KeyGenerationApi', 'api/NetFundingsApi', 'api/NotificationOfChangesApi', 'api/PayerAuthenticationApi', 'api/PaymentBatchSummariesApi', 'api/PaymentInstrumentApi', 'api/PaymentsApi', 'api/PayoutsApi', 'api/PurchaseAndRefundDetailsApi', 'api/RefundApi', 'api/ReportDefinitionsApi', 'api/ReportDownloadsApi', 'api/ReportSubscriptionsApi', 'api/ReportsApi', 'api/RetrievalDetailsApi', 'api/RetrievalSummariesApi', 'api/ReversalApi', 'api/SearchTransactionsApi', 'api/SecureFileShareApi', 'api/SymmetricKeyManagementApi', 'api/TaxesApi', 'api/TokenizationApi', 'api/TransactionBatchesApi', 'api/TransactionDetailsApi', 'api/UserManagementApi', 'api/UserManagementSearchApi', 'api/VerificationApi', 'api/VoidApi', 'api/OAuthApi'], factory); + define(['ApiClient', 'model/AddNegativeListRequest', 'model/AuthReversalRequest', 'model/CapturePaymentRequest', 'model/CheckPayerAuthEnrollmentRequest', 'model/CreateAdhocReportRequest', 'model/CreateBundledDecisionManagerCaseRequest', 'model/CreateCreditRequest', 'model/CreateInvoiceRequest', 'model/CreateP12KeysRequest', 'model/CreatePaymentRequest', 'model/CreateReportSubscriptionRequest', 'model/CreateSearchRequest', 'model/CreateSharedSecretKeysRequest', 'model/CreateSharedSecretKeysVerifiRequest', 'model/DeleteBulkP12KeysRequest', 'model/DeleteBulkSymmetricKeysRequest', 'model/FlexV1KeysPost200Response', 'model/FlexV1KeysPost200ResponseDer', 'model/FlexV1KeysPost200ResponseJwk', 'model/FlexV1TokensPost200Response', 'model/Flexv1tokensCardInfo', 'model/FraudMarkingActionRequest', 'model/GeneratePublicKeyRequest', 'model/IncrementAuthRequest', 'model/InlineResponse400', 'model/InlineResponse4001', 'model/InlineResponse4001Fields', 'model/InlineResponse4002', 'model/InlineResponse400Details', 'model/InlineResponse400Errors', 'model/InlineResponse502', 'model/InlineResponseDefault', 'model/InlineResponseDefaultLinks', 'model/InlineResponseDefaultLinksNext', 'model/InlineResponseDefaultResponseStatus', 'model/InlineResponseDefaultResponseStatusDetails', 'model/InvoiceSettingsRequest', 'model/InvoicingV2InvoiceSettingsGet200Response', 'model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformation', 'model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformationHeaderStyle', 'model/InvoicingV2InvoicesAllGet200Response', 'model/InvoicingV2InvoicesAllGet200ResponseCustomerInformation', 'model/InvoicingV2InvoicesAllGet200ResponseInvoiceInformation', 'model/InvoicingV2InvoicesAllGet200ResponseInvoices', 'model/InvoicingV2InvoicesAllGet200ResponseLinks', 'model/InvoicingV2InvoicesAllGet200ResponseLinks1', 'model/InvoicingV2InvoicesAllGet200ResponseOrderInformation', 'model/InvoicingV2InvoicesAllGet200ResponseOrderInformationAmountDetails', 'model/InvoicingV2InvoicesAllGet400Response', 'model/InvoicingV2InvoicesAllGet404Response', 'model/InvoicingV2InvoicesAllGet502Response', 'model/InvoicingV2InvoicesGet200Response', 'model/InvoicingV2InvoicesGet200ResponseInvoiceHistory', 'model/InvoicingV2InvoicesGet200ResponseTransactionDetails', 'model/InvoicingV2InvoicesPost201Response', 'model/InvoicingV2InvoicesPost201ResponseInvoiceInformation', 'model/InvoicingV2InvoicesPost201ResponseOrderInformation', 'model/InvoicingV2InvoicesPost201ResponseOrderInformationAmountDetails', 'model/InvoicingV2InvoicesPost202Response', 'model/Invoicingv2invoiceSettingsInvoiceSettingsInformation', 'model/Invoicingv2invoicesCustomerInformation', 'model/Invoicingv2invoicesInvoiceInformation', 'model/Invoicingv2invoicesOrderInformation', 'model/Invoicingv2invoicesOrderInformationAmountDetails', 'model/Invoicingv2invoicesOrderInformationAmountDetailsFreight', 'model/Invoicingv2invoicesOrderInformationAmountDetailsTaxDetails', 'model/Invoicingv2invoicesOrderInformationLineItems', 'model/Invoicingv2invoicesidInvoiceInformation', 'model/KmsV2KeysAsymDeletesPost200Response', 'model/KmsV2KeysAsymDeletesPost200ResponseKeyInformation', 'model/KmsV2KeysAsymGet200Response', 'model/KmsV2KeysAsymGet200ResponseKeyInformation', 'model/KmsV2KeysAsymPost201Response', 'model/KmsV2KeysAsymPost201ResponseCertificateInformation', 'model/KmsV2KeysAsymPost201ResponseKeyInformation', 'model/KmsV2KeysSymDeletesPost200Response', 'model/KmsV2KeysSymDeletesPost200ResponseKeyInformation', 'model/KmsV2KeysSymGet200Response', 'model/KmsV2KeysSymGet200ResponseKeyInformation', 'model/KmsV2KeysSymPost201Response', 'model/KmsV2KeysSymPost201ResponseErrorInformation', 'model/KmsV2KeysSymPost201ResponseKeyInformation', 'model/Kmsv2keysasymKeyInformation', 'model/Kmsv2keyssymClientReferenceInformation', 'model/Kmsv2keyssymKeyInformation', 'model/Kmsv2keyssymdeletesKeyInformation', 'model/Kmsv2keyssymverifiKeyInformation', 'model/MitReversalRequest', 'model/MitVoidRequest', 'model/OctCreatePaymentRequest', 'model/PatchCustomerPaymentInstrumentRequest', 'model/PatchCustomerRequest', 'model/PatchCustomerShippingAddressRequest', 'model/PatchInstrumentIdentifierRequest', 'model/PatchPaymentInstrumentRequest', 'model/PayerAuthSetupRequest', 'model/PaymentInstrumentList', 'model/PaymentInstrumentListEmbedded', 'model/PaymentInstrumentListLinks', 'model/PaymentInstrumentListLinksFirst', 'model/PaymentInstrumentListLinksLast', 'model/PaymentInstrumentListLinksNext', 'model/PaymentInstrumentListLinksPrev', 'model/PaymentInstrumentListLinksSelf', 'model/PostCustomerPaymentInstrumentRequest', 'model/PostCustomerRequest', 'model/PostCustomerShippingAddressRequest', 'model/PostInstrumentIdentifierEnrollmentRequest', 'model/PostInstrumentIdentifierRequest', 'model/PostPaymentInstrumentRequest', 'model/PredefinedSubscriptionRequestBean', 'model/PtsV1TransactionBatchesGet200Response', 'model/PtsV1TransactionBatchesGet200ResponseLinks', 'model/PtsV1TransactionBatchesGet200ResponseLinksSelf', 'model/PtsV1TransactionBatchesGet200ResponseTransactionBatches', 'model/PtsV1TransactionBatchesGet400Response', 'model/PtsV1TransactionBatchesGet400ResponseErrorInformation', 'model/PtsV1TransactionBatchesGet400ResponseErrorInformationDetails', 'model/PtsV1TransactionBatchesGet500Response', 'model/PtsV1TransactionBatchesGet500ResponseErrorInformation', 'model/PtsV1TransactionBatchesIdGet200Response', 'model/PtsV1TransactionBatchesIdGet200ResponseLinks', 'model/PtsV1TransactionBatchesIdGet200ResponseLinksTransactions', 'model/PtsV2CreditsPost201Response', 'model/PtsV2CreditsPost201ResponseCreditAmountDetails', 'model/PtsV2CreditsPost201ResponsePaymentInformation', 'model/PtsV2CreditsPost201ResponseProcessingInformation', 'model/PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions', 'model/PtsV2IncrementalAuthorizationPatch201Response', 'model/PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponseErrorInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponseLinks', 'model/PtsV2IncrementalAuthorizationPatch201ResponseOrderInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformation', 'model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformationAccountFeatures', 'model/PtsV2IncrementalAuthorizationPatch201ResponseProcessorInformation', 'model/PtsV2IncrementalAuthorizationPatch400Response', 'model/PtsV2PaymentsCapturesPost201Response', 'model/PtsV2PaymentsCapturesPost201ResponseLinks', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformation', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsCapturesPost201ResponseOrderInformationInvoiceDetails', 'model/PtsV2PaymentsCapturesPost201ResponsePointOfSaleInformation', 'model/PtsV2PaymentsCapturesPost201ResponseProcessingInformation', 'model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation', 'model/PtsV2PaymentsCapturesPost400Response', 'model/PtsV2PaymentsPost201Response', 'model/PtsV2PaymentsPost201ResponseBuyerInformation', 'model/PtsV2PaymentsPost201ResponseClientReferenceInformation', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication', 'model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformation', 'model/PtsV2PaymentsPost201ResponseErrorInformationDetails', 'model/PtsV2PaymentsPost201ResponseInstallmentInformation', 'model/PtsV2PaymentsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsPost201ResponseLinks', 'model/PtsV2PaymentsPost201ResponseLinksSelf', 'model/PtsV2PaymentsPost201ResponseOrderInformation', 'model/PtsV2PaymentsPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails', 'model/PtsV2PaymentsPost201ResponseOrderInformationRewardPointsDetails', 'model/PtsV2PaymentsPost201ResponsePaymentAccountInformation', 'model/PtsV2PaymentsPost201ResponsePaymentAccountInformationCard', 'model/PtsV2PaymentsPost201ResponsePaymentInformation', 'model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures', 'model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBank', 'model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount', 'model/PtsV2PaymentsPost201ResponsePaymentInformationInstrumentIdentifier', 'model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard', 'model/PtsV2PaymentsPost201ResponsePaymentInsightsInformation', 'model/PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights', 'model/PtsV2PaymentsPost201ResponsePointOfSaleInformation', 'model/PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv', 'model/PtsV2PaymentsPost201ResponseProcessingInformation', 'model/PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions', 'model/PtsV2PaymentsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsPost201ResponseProcessorInformationAchVerification', 'model/PtsV2PaymentsPost201ResponseProcessorInformationAvs', 'model/PtsV2PaymentsPost201ResponseProcessorInformationCardVerification', 'model/PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse', 'model/PtsV2PaymentsPost201ResponseProcessorInformationCustomer', 'model/PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults', 'model/PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice', 'model/PtsV2PaymentsPost201ResponseProcessorInformationRouting', 'model/PtsV2PaymentsPost201ResponseRiskInformation', 'model/PtsV2PaymentsPost201ResponseRiskInformationInfoCodes', 'model/PtsV2PaymentsPost201ResponseRiskInformationIpAddress', 'model/PtsV2PaymentsPost201ResponseRiskInformationProfile', 'model/PtsV2PaymentsPost201ResponseRiskInformationProviders', 'model/PtsV2PaymentsPost201ResponseRiskInformationProvidersProviderName', 'model/PtsV2PaymentsPost201ResponseRiskInformationRules', 'model/PtsV2PaymentsPost201ResponseRiskInformationScore', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravel', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelActualFinalDestination', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDeparture', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDestination', 'model/PtsV2PaymentsPost201ResponseRiskInformationTravelLastDestination', 'model/PtsV2PaymentsPost201ResponseRiskInformationVelocity', 'model/PtsV2PaymentsPost201ResponseRiskInformationVelocityMorphing', 'model/PtsV2PaymentsPost201ResponseTokenInformation', 'model/PtsV2PaymentsPost201ResponseTokenInformationCustomer', 'model/PtsV2PaymentsPost201ResponseTokenInformationInstrumentIdentifier', 'model/PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument', 'model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress', 'model/PtsV2PaymentsPost400Response', 'model/PtsV2PaymentsPost502Response', 'model/PtsV2PaymentsRefundPost201Response', 'model/PtsV2PaymentsRefundPost201ResponseLinks', 'model/PtsV2PaymentsRefundPost201ResponseOrderInformation', 'model/PtsV2PaymentsRefundPost201ResponseProcessorInformation', 'model/PtsV2PaymentsRefundPost201ResponseRefundAmountDetails', 'model/PtsV2PaymentsRefundPost400Response', 'model/PtsV2PaymentsReversalsPost201Response', 'model/PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation', 'model/PtsV2PaymentsReversalsPost201ResponseIssuerInformation', 'model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails', 'model/PtsV2PaymentsReversalsPost400Response', 'model/PtsV2PaymentsVoidsPost201Response', 'model/PtsV2PaymentsVoidsPost201ResponseProcessorInformation', 'model/PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails', 'model/PtsV2PaymentsVoidsPost400Response', 'model/PtsV2PayoutsPost201Response', 'model/PtsV2PayoutsPost201ResponseErrorInformation', 'model/PtsV2PayoutsPost201ResponseMerchantInformation', 'model/PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor', 'model/PtsV2PayoutsPost201ResponseOrderInformation', 'model/PtsV2PayoutsPost201ResponseOrderInformationAmountDetails', 'model/PtsV2PayoutsPost201ResponseProcessorInformation', 'model/PtsV2PayoutsPost201ResponseRecipientInformation', 'model/PtsV2PayoutsPost201ResponseRecipientInformationCard', 'model/PtsV2PayoutsPost400Response', 'model/Ptsv2creditsInstallmentInformation', 'model/Ptsv2creditsProcessingInformation', 'model/Ptsv2creditsProcessingInformationBankTransferOptions', 'model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2creditsProcessingInformationJapanPaymentOptions', 'model/Ptsv2creditsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsAcquirerInformation', 'model/Ptsv2paymentsAggregatorInformation', 'model/Ptsv2paymentsAggregatorInformationSubMerchant', 'model/Ptsv2paymentsBuyerInformation', 'model/Ptsv2paymentsBuyerInformationPersonalIdentification', 'model/Ptsv2paymentsClientReferenceInformation', 'model/Ptsv2paymentsClientReferenceInformationPartner', 'model/Ptsv2paymentsConsumerAuthenticationInformation', 'model/Ptsv2paymentsConsumerAuthenticationInformationStrongAuthentication', 'model/Ptsv2paymentsDeviceInformation', 'model/Ptsv2paymentsDeviceInformationRawData', 'model/Ptsv2paymentsHealthCareInformation', 'model/Ptsv2paymentsHealthCareInformationAmountDetails', 'model/Ptsv2paymentsInstallmentInformation', 'model/Ptsv2paymentsInvoiceDetails', 'model/Ptsv2paymentsIssuerInformation', 'model/Ptsv2paymentsMerchantDefinedInformation', 'model/Ptsv2paymentsMerchantInformation', 'model/Ptsv2paymentsMerchantInformationMerchantDescriptor', 'model/Ptsv2paymentsMerchantInformationServiceFeeDescriptor', 'model/Ptsv2paymentsOrderInformation', 'model/Ptsv2paymentsOrderInformationAmountDetails', 'model/Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts', 'model/Ptsv2paymentsOrderInformationAmountDetailsCurrencyConversion', 'model/Ptsv2paymentsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails', 'model/Ptsv2paymentsOrderInformationBillTo', 'model/Ptsv2paymentsOrderInformationBillToCompany', 'model/Ptsv2paymentsOrderInformationInvoiceDetails', 'model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum', 'model/Ptsv2paymentsOrderInformationLineItems', 'model/Ptsv2paymentsOrderInformationPassenger', 'model/Ptsv2paymentsOrderInformationShipTo', 'model/Ptsv2paymentsOrderInformationShippingDetails', 'model/Ptsv2paymentsPaymentInformation', 'model/Ptsv2paymentsPaymentInformationBank', 'model/Ptsv2paymentsPaymentInformationBankAccount', 'model/Ptsv2paymentsPaymentInformationCard', 'model/Ptsv2paymentsPaymentInformationCustomer', 'model/Ptsv2paymentsPaymentInformationEWallet', 'model/Ptsv2paymentsPaymentInformationFluidData', 'model/Ptsv2paymentsPaymentInformationInstrumentIdentifier', 'model/Ptsv2paymentsPaymentInformationLegacyToken', 'model/Ptsv2paymentsPaymentInformationPaymentInstrument', 'model/Ptsv2paymentsPaymentInformationPaymentType', 'model/Ptsv2paymentsPaymentInformationPaymentTypeMethod', 'model/Ptsv2paymentsPaymentInformationShippingAddress', 'model/Ptsv2paymentsPaymentInformationTokenizedCard', 'model/Ptsv2paymentsPointOfSaleInformation', 'model/Ptsv2paymentsPointOfSaleInformationEmv', 'model/Ptsv2paymentsProcessingInformation', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator', 'model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Ptsv2paymentsProcessingInformationBankTransferOptions', 'model/Ptsv2paymentsProcessingInformationCaptureOptions', 'model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer', 'model/Ptsv2paymentsProcessingInformationJapanPaymentOptions', 'model/Ptsv2paymentsProcessingInformationLoanOptions', 'model/Ptsv2paymentsProcessingInformationPurchaseOptions', 'model/Ptsv2paymentsProcessingInformationRecurringOptions', 'model/Ptsv2paymentsProcessorInformation', 'model/Ptsv2paymentsProcessorInformationAuthorizationOptions', 'model/Ptsv2paymentsPromotionInformation', 'model/Ptsv2paymentsRecipientInformation', 'model/Ptsv2paymentsRecurringPaymentInformation', 'model/Ptsv2paymentsRiskInformation', 'model/Ptsv2paymentsRiskInformationAuxiliaryData', 'model/Ptsv2paymentsRiskInformationBuyerHistory', 'model/Ptsv2paymentsRiskInformationBuyerHistoryAccountHistory', 'model/Ptsv2paymentsRiskInformationBuyerHistoryCustomerAccount', 'model/Ptsv2paymentsRiskInformationProfile', 'model/Ptsv2paymentsTokenInformation', 'model/Ptsv2paymentsTokenInformationPaymentInstrument', 'model/Ptsv2paymentsTokenInformationShippingAddress', 'model/Ptsv2paymentsTravelInformation', 'model/Ptsv2paymentsTravelInformationAgency', 'model/Ptsv2paymentsTravelInformationAutoRental', 'model/Ptsv2paymentsTravelInformationAutoRentalRentalAddress', 'model/Ptsv2paymentsTravelInformationAutoRentalReturnAddress', 'model/Ptsv2paymentsTravelInformationAutoRentalTaxDetails', 'model/Ptsv2paymentsTravelInformationLodging', 'model/Ptsv2paymentsTravelInformationLodgingRoom', 'model/Ptsv2paymentsTravelInformationTransit', 'model/Ptsv2paymentsTravelInformationTransitAirline', 'model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformation', 'model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformationService', 'model/Ptsv2paymentsTravelInformationTransitAirlineLegs', 'model/Ptsv2paymentsTravelInformationTransitAirlineTicketIssuer', 'model/Ptsv2paymentsidClientReferenceInformation', 'model/Ptsv2paymentsidClientReferenceInformationPartner', 'model/Ptsv2paymentsidMerchantInformation', 'model/Ptsv2paymentsidOrderInformation', 'model/Ptsv2paymentsidOrderInformationAmountDetails', 'model/Ptsv2paymentsidProcessingInformation', 'model/Ptsv2paymentsidProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsidProcessingInformationAuthorizationOptionsInitiator', 'model/Ptsv2paymentsidTravelInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformation', 'model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant', 'model/Ptsv2paymentsidcapturesBuyerInformation', 'model/Ptsv2paymentsidcapturesDeviceInformation', 'model/Ptsv2paymentsidcapturesInstallmentInformation', 'model/Ptsv2paymentsidcapturesMerchantInformation', 'model/Ptsv2paymentsidcapturesOrderInformation', 'model/Ptsv2paymentsidcapturesOrderInformationAmountDetails', 'model/Ptsv2paymentsidcapturesOrderInformationBillTo', 'model/Ptsv2paymentsidcapturesOrderInformationInvoiceDetails', 'model/Ptsv2paymentsidcapturesOrderInformationShipTo', 'model/Ptsv2paymentsidcapturesOrderInformationShippingDetails', 'model/Ptsv2paymentsidcapturesPaymentInformation', 'model/Ptsv2paymentsidcapturesPaymentInformationCard', 'model/Ptsv2paymentsidcapturesPointOfSaleInformation', 'model/Ptsv2paymentsidcapturesPointOfSaleInformationEmv', 'model/Ptsv2paymentsidcapturesProcessingInformation', 'model/Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions', 'model/Ptsv2paymentsidcapturesProcessingInformationCaptureOptions', 'model/Ptsv2paymentsidrefundsMerchantInformation', 'model/Ptsv2paymentsidrefundsOrderInformation', 'model/Ptsv2paymentsidrefundsOrderInformationLineItems', 'model/Ptsv2paymentsidrefundsPaymentInformation', 'model/Ptsv2paymentsidrefundsPaymentInformationBank', 'model/Ptsv2paymentsidrefundsPaymentInformationCard', 'model/Ptsv2paymentsidrefundsPointOfSaleInformation', 'model/Ptsv2paymentsidrefundsProcessingInformation', 'model/Ptsv2paymentsidrefundsProcessingInformationRecurringOptions', 'model/Ptsv2paymentsidreversalsClientReferenceInformation', 'model/Ptsv2paymentsidreversalsClientReferenceInformationPartner', 'model/Ptsv2paymentsidreversalsOrderInformation', 'model/Ptsv2paymentsidreversalsOrderInformationAmountDetails', 'model/Ptsv2paymentsidreversalsOrderInformationLineItems', 'model/Ptsv2paymentsidreversalsPointOfSaleInformation', 'model/Ptsv2paymentsidreversalsPointOfSaleInformationEmv', 'model/Ptsv2paymentsidreversalsProcessingInformation', 'model/Ptsv2paymentsidreversalsReversalInformation', 'model/Ptsv2paymentsidreversalsReversalInformationAmountDetails', 'model/Ptsv2paymentsidvoidsOrderInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation', 'model/Ptsv2payoutsClientReferenceInformation', 'model/Ptsv2payoutsMerchantInformation', 'model/Ptsv2payoutsMerchantInformationMerchantDescriptor', 'model/Ptsv2payoutsOrderInformation', 'model/Ptsv2payoutsOrderInformationAmountDetails', 'model/Ptsv2payoutsOrderInformationAmountDetailsSurcharge', 'model/Ptsv2payoutsOrderInformationBillTo', 'model/Ptsv2payoutsPaymentInformation', 'model/Ptsv2payoutsPaymentInformationCard', 'model/Ptsv2payoutsProcessingInformation', 'model/Ptsv2payoutsProcessingInformationFundingOptions', 'model/Ptsv2payoutsProcessingInformationFundingOptionsInitiator', 'model/Ptsv2payoutsProcessingInformationPayoutsOptions', 'model/Ptsv2payoutsRecipientInformation', 'model/Ptsv2payoutsSenderInformation', 'model/Ptsv2payoutsSenderInformationAccount', 'model/Ptsv2voidsProcessingInformation', 'model/RefundCaptureRequest', 'model/RefundPaymentRequest', 'model/ReportingV3ChargebackDetailsGet200Response', 'model/ReportingV3ChargebackDetailsGet200ResponseChargebackDetails', 'model/ReportingV3ChargebackSummariesGet200Response', 'model/ReportingV3ChargebackSummariesGet200ResponseChargebackSummaries', 'model/ReportingV3ConversionDetailsGet200Response', 'model/ReportingV3ConversionDetailsGet200ResponseConversionDetails', 'model/ReportingV3ConversionDetailsGet200ResponseNotes', 'model/ReportingV3InterchangeClearingLevelDetailsGet200Response', 'model/ReportingV3InterchangeClearingLevelDetailsGet200ResponseInterchangeClearingLevelDetails', 'model/ReportingV3NetFundingsGet200Response', 'model/ReportingV3NetFundingsGet200ResponseNetFundingSummaries', 'model/ReportingV3NetFundingsGet200ResponseTotalPurchases', 'model/ReportingV3NotificationofChangesGet200Response', 'model/ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges', 'model/ReportingV3PaymentBatchSummariesGet200Response', 'model/ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries', 'model/ReportingV3PurchaseRefundDetailsGet200Response', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseOthers', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses', 'model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlements', 'model/ReportingV3ReportDefinitionsGet200Response', 'model/ReportingV3ReportDefinitionsGet200ResponseReportDefinitions', 'model/ReportingV3ReportDefinitionsNameGet200Response', 'model/ReportingV3ReportDefinitionsNameGet200ResponseAttributes', 'model/ReportingV3ReportDefinitionsNameGet200ResponseDefaultSettings', 'model/ReportingV3ReportSubscriptionsGet200Response', 'model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions', 'model/ReportingV3ReportsGet200Response', 'model/ReportingV3ReportsGet200ResponseLink', 'model/ReportingV3ReportsGet200ResponseLinkReportDownload', 'model/ReportingV3ReportsGet200ResponseReportSearchResults', 'model/ReportingV3ReportsIdGet200Response', 'model/ReportingV3RetrievalDetailsGet200Response', 'model/ReportingV3RetrievalDetailsGet200ResponseRetrievalDetails', 'model/ReportingV3RetrievalSummariesGet200Response', 'model/Reportingv3ReportDownloadsGet400Response', 'model/Reportingv3ReportDownloadsGet400ResponseDetails', 'model/Reportingv3reportsReportFilters', 'model/Reportingv3reportsReportPreferences', 'model/RiskV1AddressVerificationsPost201Response', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress', 'model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddressAddress1', 'model/RiskV1AddressVerificationsPost201ResponseErrorInformation', 'model/RiskV1AuthenticationResultsPost201Response', 'model/RiskV1AuthenticationResultsPost201ResponseConsumerAuthenticationInformation', 'model/RiskV1AuthenticationSetupsPost201Response', 'model/RiskV1AuthenticationSetupsPost201ResponseConsumerAuthenticationInformation', 'model/RiskV1AuthenticationSetupsPost201ResponseErrorInformation', 'model/RiskV1AuthenticationsPost201Response', 'model/RiskV1AuthenticationsPost201ResponseErrorInformation', 'model/RiskV1AuthenticationsPost400Response', 'model/RiskV1AuthenticationsPost400Response1', 'model/RiskV1DecisionsPost201Response', 'model/RiskV1DecisionsPost201ResponseClientReferenceInformation', 'model/RiskV1DecisionsPost201ResponseConsumerAuthenticationInformation', 'model/RiskV1DecisionsPost201ResponseErrorInformation', 'model/RiskV1DecisionsPost201ResponseOrderInformation', 'model/RiskV1DecisionsPost201ResponseOrderInformationAmountDetails', 'model/RiskV1DecisionsPost201ResponsePaymentInformation', 'model/RiskV1DecisionsPost400Response', 'model/RiskV1DecisionsPost400Response1', 'model/RiskV1ExportComplianceInquiriesPost201Response', 'model/RiskV1ExportComplianceInquiriesPost201ResponseErrorInformation', 'model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformation', 'model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchList', 'model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchListMatches', 'model/RiskV1UpdatePost201Response', 'model/Riskv1addressverificationsBuyerInformation', 'model/Riskv1addressverificationsOrderInformation', 'model/Riskv1addressverificationsOrderInformationBillTo', 'model/Riskv1addressverificationsOrderInformationLineItems', 'model/Riskv1addressverificationsOrderInformationShipTo', 'model/Riskv1authenticationresultsConsumerAuthenticationInformation', 'model/Riskv1authenticationresultsDeviceInformation', 'model/Riskv1authenticationresultsOrderInformation', 'model/Riskv1authenticationresultsOrderInformationAmountDetails', 'model/Riskv1authenticationresultsOrderInformationLineItems', 'model/Riskv1authenticationresultsPaymentInformation', 'model/Riskv1authenticationresultsPaymentInformationCard', 'model/Riskv1authenticationresultsPaymentInformationFluidData', 'model/Riskv1authenticationresultsPaymentInformationTokenizedCard', 'model/Riskv1authenticationsBuyerInformation', 'model/Riskv1authenticationsDeviceInformation', 'model/Riskv1authenticationsOrderInformation', 'model/Riskv1authenticationsOrderInformationAmountDetails', 'model/Riskv1authenticationsOrderInformationBillTo', 'model/Riskv1authenticationsOrderInformationLineItems', 'model/Riskv1authenticationsPaymentInformation', 'model/Riskv1authenticationsPaymentInformationCard', 'model/Riskv1authenticationsPaymentInformationTokenizedCard', 'model/Riskv1authenticationsRiskInformation', 'model/Riskv1authenticationsTravelInformation', 'model/Riskv1authenticationsetupsPaymentInformation', 'model/Riskv1authenticationsetupsPaymentInformationCard', 'model/Riskv1authenticationsetupsPaymentInformationCustomer', 'model/Riskv1authenticationsetupsPaymentInformationFluidData', 'model/Riskv1authenticationsetupsPaymentInformationTokenizedCard', 'model/Riskv1authenticationsetupsProcessingInformation', 'model/Riskv1authenticationsetupsTokenInformation', 'model/Riskv1decisionsBuyerInformation', 'model/Riskv1decisionsClientReferenceInformation', 'model/Riskv1decisionsClientReferenceInformationPartner', 'model/Riskv1decisionsConsumerAuthenticationInformation', 'model/Riskv1decisionsConsumerAuthenticationInformationStrongAuthentication', 'model/Riskv1decisionsDeviceInformation', 'model/Riskv1decisionsMerchantDefinedInformation', 'model/Riskv1decisionsMerchantInformation', 'model/Riskv1decisionsMerchantInformationMerchantDescriptor', 'model/Riskv1decisionsOrderInformation', 'model/Riskv1decisionsOrderInformationAmountDetails', 'model/Riskv1decisionsOrderInformationBillTo', 'model/Riskv1decisionsOrderInformationLineItems', 'model/Riskv1decisionsOrderInformationShipTo', 'model/Riskv1decisionsOrderInformationShippingDetails', 'model/Riskv1decisionsPaymentInformation', 'model/Riskv1decisionsPaymentInformationCard', 'model/Riskv1decisionsPaymentInformationTokenizedCard', 'model/Riskv1decisionsProcessingInformation', 'model/Riskv1decisionsProcessorInformation', 'model/Riskv1decisionsProcessorInformationAvs', 'model/Riskv1decisionsProcessorInformationCardVerification', 'model/Riskv1decisionsRiskInformation', 'model/Riskv1decisionsTravelInformation', 'model/Riskv1decisionsTravelInformationLegs', 'model/Riskv1decisionsTravelInformationPassengers', 'model/Riskv1decisionsidmarkingRiskInformation', 'model/Riskv1decisionsidmarkingRiskInformationMarkingDetails', 'model/Riskv1exportcomplianceinquiriesDeviceInformation', 'model/Riskv1exportcomplianceinquiriesExportComplianceInformation', 'model/Riskv1exportcomplianceinquiriesExportComplianceInformationWeights', 'model/Riskv1exportcomplianceinquiriesOrderInformation', 'model/Riskv1exportcomplianceinquiriesOrderInformationBillTo', 'model/Riskv1exportcomplianceinquiriesOrderInformationBillToCompany', 'model/Riskv1exportcomplianceinquiriesOrderInformationLineItems', 'model/Riskv1exportcomplianceinquiriesOrderInformationShipTo', 'model/Riskv1liststypeentriesBuyerInformation', 'model/Riskv1liststypeentriesClientReferenceInformation', 'model/Riskv1liststypeentriesDeviceInformation', 'model/Riskv1liststypeentriesOrderInformation', 'model/Riskv1liststypeentriesOrderInformationAddress', 'model/Riskv1liststypeentriesOrderInformationBillTo', 'model/Riskv1liststypeentriesOrderInformationLineItems', 'model/Riskv1liststypeentriesOrderInformationShipTo', 'model/Riskv1liststypeentriesPaymentInformation', 'model/Riskv1liststypeentriesPaymentInformationBank', 'model/Riskv1liststypeentriesPaymentInformationCard', 'model/Riskv1liststypeentriesRiskInformation', 'model/Riskv1liststypeentriesRiskInformationMarkingDetails', 'model/SearchRequest', 'model/ShippingAddressListForCustomer', 'model/ShippingAddressListForCustomerEmbedded', 'model/ShippingAddressListForCustomerLinks', 'model/ShippingAddressListForCustomerLinksFirst', 'model/ShippingAddressListForCustomerLinksLast', 'model/ShippingAddressListForCustomerLinksNext', 'model/ShippingAddressListForCustomerLinksPrev', 'model/ShippingAddressListForCustomerLinksSelf', 'model/TaxRequest', 'model/TmsV2CustomersResponse', 'model/Tmsv2customersBuyerInformation', 'model/Tmsv2customersClientReferenceInformation', 'model/Tmsv2customersDefaultPaymentInstrument', 'model/Tmsv2customersDefaultShippingAddress', 'model/Tmsv2customersEmbedded', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrument', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBankAccount', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBillTo', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationIssuedBy', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationPersonalIdentification', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCardTokenizedInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbedded', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBillTo', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierIssuer', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinks', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksPaymentInstruments', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksSelf', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierMetadata', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptions', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiator', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCardCard', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentInstrumentIdentifier', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinks', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinksSelf', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformationMerchantDescriptor', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMetadata', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformation', 'model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformationBankTransferOptions', 'model/Tmsv2customersEmbeddedDefaultShippingAddress', 'model/Tmsv2customersEmbeddedDefaultShippingAddressLinks', 'model/Tmsv2customersEmbeddedDefaultShippingAddressLinksCustomer', 'model/Tmsv2customersEmbeddedDefaultShippingAddressLinksSelf', 'model/Tmsv2customersEmbeddedDefaultShippingAddressMetadata', 'model/Tmsv2customersEmbeddedDefaultShippingAddressShipTo', 'model/Tmsv2customersLinks', 'model/Tmsv2customersLinksPaymentInstruments', 'model/Tmsv2customersLinksSelf', 'model/Tmsv2customersLinksShippingAddress', 'model/Tmsv2customersMerchantDefinedInformation', 'model/Tmsv2customersMetadata', 'model/Tmsv2customersObjectInformation', 'model/TokenizeRequest', 'model/TssV2TransactionsGet200Response', 'model/TssV2TransactionsGet200ResponseApplicationInformation', 'model/TssV2TransactionsGet200ResponseApplicationInformationApplications', 'model/TssV2TransactionsGet200ResponseBuyerInformation', 'model/TssV2TransactionsGet200ResponseClientReferenceInformation', 'model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner', 'model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation', 'model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication', 'model/TssV2TransactionsGet200ResponseDeviceInformation', 'model/TssV2TransactionsGet200ResponseErrorInformation', 'model/TssV2TransactionsGet200ResponseFraudMarkingInformation', 'model/TssV2TransactionsGet200ResponseInstallmentInformation', 'model/TssV2TransactionsGet200ResponseLinks', 'model/TssV2TransactionsGet200ResponseMerchantInformation', 'model/TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor', 'model/TssV2TransactionsGet200ResponseOrderInformation', 'model/TssV2TransactionsGet200ResponseOrderInformationAmountDetails', 'model/TssV2TransactionsGet200ResponseOrderInformationBillTo', 'model/TssV2TransactionsGet200ResponseOrderInformationInvoiceDetails', 'model/TssV2TransactionsGet200ResponseOrderInformationLineItems', 'model/TssV2TransactionsGet200ResponseOrderInformationShipTo', 'model/TssV2TransactionsGet200ResponseOrderInformationShippingDetails', 'model/TssV2TransactionsGet200ResponsePaymentInformation', 'model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures', 'model/TssV2TransactionsGet200ResponsePaymentInformationBank', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankAccount', 'model/TssV2TransactionsGet200ResponsePaymentInformationBankMandate', 'model/TssV2TransactionsGet200ResponsePaymentInformationCard', 'model/TssV2TransactionsGet200ResponsePaymentInformationCustomer', 'model/TssV2TransactionsGet200ResponsePaymentInformationFluidData', 'model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier', 'model/TssV2TransactionsGet200ResponsePaymentInformationInvoice', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType', 'model/TssV2TransactionsGet200ResponsePointOfSaleInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformation', 'model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions', 'model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptionsInitiator', 'model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions', 'model/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions', 'model/TssV2TransactionsGet200ResponseProcessorInformation', 'model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults', 'model/TssV2TransactionsGet200ResponseProcessorInformationMultiProcessorRouting', 'model/TssV2TransactionsGet200ResponseProcessorInformationProcessor', 'model/TssV2TransactionsGet200ResponseRiskInformation', 'model/TssV2TransactionsGet200ResponseRiskInformationProfile', 'model/TssV2TransactionsGet200ResponseRiskInformationRules', 'model/TssV2TransactionsGet200ResponseRiskInformationScore', 'model/TssV2TransactionsGet200ResponseSenderInformation', 'model/TssV2TransactionsGet200ResponseTokenInformation', 'model/TssV2TransactionsPost201Response', 'model/TssV2TransactionsPost201ResponseEmbedded', 'model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformationApplications', 'model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner', 'model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedLinks', 'model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo', 'model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBank', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBankAccount', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCustomer', 'model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType', 'model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner', 'model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedProcessorInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedRiskInformation', 'model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders', 'model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint', 'model/TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries', 'model/TssV2TransactionsPost400Response', 'model/UmsV1UsersGet200Response', 'model/UmsV1UsersGet200ResponseAccountInformation', 'model/UmsV1UsersGet200ResponseContactInformation', 'model/UmsV1UsersGet200ResponseOrganizationInformation', 'model/UmsV1UsersGet200ResponseUsers', 'model/UpdateInvoiceRequest', 'model/V1FileDetailsGet200Response', 'model/V1FileDetailsGet200ResponseFileDetails', 'model/V1FileDetailsGet200ResponseLinks', 'model/V1FileDetailsGet200ResponseLinksFiles', 'model/V1FileDetailsGet200ResponseLinksSelf', 'model/ValidateExportComplianceRequest', 'model/ValidateRequest', 'model/VasV2PaymentsPost201Response', 'model/VasV2PaymentsPost201ResponseLinks', 'model/VasV2PaymentsPost201ResponseOrderInformation', 'model/VasV2PaymentsPost201ResponseOrderInformationJurisdiction', 'model/VasV2PaymentsPost201ResponseOrderInformationLineItems', 'model/VasV2PaymentsPost201ResponseOrderInformationTaxDetails', 'model/VasV2PaymentsPost201ResponseTaxInformation', 'model/VasV2PaymentsPost400Response', 'model/VasV2TaxVoid200Response', 'model/VasV2TaxVoid200ResponseVoidAmountDetails', 'model/VasV2TaxVoidsPost400Response', 'model/Vasv2taxBuyerInformation', 'model/Vasv2taxClientReferenceInformation', 'model/Vasv2taxMerchantInformation', 'model/Vasv2taxOrderInformation', 'model/Vasv2taxOrderInformationBillTo', 'model/Vasv2taxOrderInformationInvoiceDetails', 'model/Vasv2taxOrderInformationLineItems', 'model/Vasv2taxOrderInformationOrderAcceptance', 'model/Vasv2taxOrderInformationOrderOrigin', 'model/Vasv2taxOrderInformationShipTo', 'model/Vasv2taxOrderInformationShippingDetails', 'model/Vasv2taxTaxInformation', 'model/Vasv2taxidClientReferenceInformation', 'model/Vasv2taxidClientReferenceInformationPartner', 'model/VerifyCustomerAddressRequest', 'model/VoidCaptureRequest', 'model/VoidCreditRequest', 'model/VoidPaymentRequest', 'model/VoidRefundRequest', 'model/VoidTaxRequest', 'model/AccessTokenResponse', 'model/BadRequestError', 'model/CreateAccessTokenRequest', 'model/ResourceNotFoundError', 'model/UnauthorizedClientError', 'api/AsymmetricKeyManagementApi', 'api/CaptureApi', 'api/ChargebackDetailsApi', 'api/ChargebackSummariesApi', 'api/ConversionDetailsApi', 'api/CreditApi', 'api/CustomerApi', 'api/CustomerPaymentInstrumentApi', 'api/CustomerShippingAddressApi', 'api/DecisionManagerApi', 'api/DownloadDTDApi', 'api/DownloadXSDApi', 'api/InstrumentIdentifierApi', 'api/InterchangeClearingLevelDetailsApi', 'api/InvoiceSettingsApi', 'api/InvoicesApi', 'api/KeyGenerationApi', 'api/NetFundingsApi', 'api/NotificationOfChangesApi', 'api/PayerAuthenticationApi', 'api/PaymentBatchSummariesApi', 'api/PaymentInstrumentApi', 'api/PaymentsApi', 'api/PayoutsApi', 'api/PurchaseAndRefundDetailsApi', 'api/RefundApi', 'api/ReportDefinitionsApi', 'api/ReportDownloadsApi', 'api/ReportSubscriptionsApi', 'api/ReportsApi', 'api/RetrievalDetailsApi', 'api/RetrievalSummariesApi', 'api/ReversalApi', 'api/SearchTransactionsApi', 'api/SecureFileShareApi', 'api/SymmetricKeyManagementApi', 'api/TaxesApi', 'api/TokenizationApi', 'api/TransactionBatchesApi', 'api/TransactionDetailsApi', 'api/UserManagementApi', 'api/UserManagementSearchApi', 'api/VerificationApi', 'api/VoidApi', 'api/OAuthApi'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('./ApiClient'), require('./model/AddNegativeListRequest'), require('./model/AuthReversalRequest'), require('./model/CapturePaymentRequest'), require('./model/CheckPayerAuthEnrollmentRequest'), require('./model/CreateAdhocReportRequest'), require('./model/CreateBundledDecisionManagerCaseRequest'), require('./model/CreateCreditRequest'), require('./model/CreateInvoiceRequest'), require('./model/CreateP12KeysRequest'), require('./model/CreatePaymentRequest'), require('./model/CreateReportSubscriptionRequest'), require('./model/CreateSearchRequest'), require('./model/CreateSharedSecretKeysRequest'), require('./model/CreateSharedSecretKeysVerifiRequest'), require('./model/DeleteBulkP12KeysRequest'), require('./model/DeleteBulkSymmetricKeysRequest'), require('./model/FlexV1KeysPost200Response'), require('./model/FlexV1KeysPost200ResponseDer'), require('./model/FlexV1KeysPost200ResponseJwk'), require('./model/FlexV1TokensPost200Response'), require('./model/Flexv1tokensCardInfo'), require('./model/FraudMarkingActionRequest'), require('./model/GeneratePublicKeyRequest'), require('./model/IncrementAuthRequest'), require('./model/InlineResponse400'), require('./model/InlineResponse4001'), require('./model/InlineResponse4001Fields'), require('./model/InlineResponse4002'), require('./model/InlineResponse400Details'), require('./model/InlineResponse400Errors'), require('./model/InlineResponseDefault'), require('./model/InlineResponseDefaultLinks'), require('./model/InlineResponseDefaultLinksNext'), require('./model/InlineResponseDefaultResponseStatus'), require('./model/InlineResponseDefaultResponseStatusDetails'), require('./model/InvoiceSettingsRequest'), require('./model/InvoicingV2InvoiceSettingsGet200Response'), require('./model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformation'), require('./model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformationHeaderStyle'), require('./model/InvoicingV2InvoicesAllGet200Response'), require('./model/InvoicingV2InvoicesAllGet200ResponseCustomerInformation'), require('./model/InvoicingV2InvoicesAllGet200ResponseInvoiceInformation'), require('./model/InvoicingV2InvoicesAllGet200ResponseInvoices'), require('./model/InvoicingV2InvoicesAllGet200ResponseLinks'), require('./model/InvoicingV2InvoicesAllGet200ResponseLinks1'), require('./model/InvoicingV2InvoicesAllGet200ResponseOrderInformation'), require('./model/InvoicingV2InvoicesAllGet200ResponseOrderInformationAmountDetails'), require('./model/InvoicingV2InvoicesAllGet400Response'), require('./model/InvoicingV2InvoicesAllGet404Response'), require('./model/InvoicingV2InvoicesAllGet502Response'), require('./model/InvoicingV2InvoicesGet200Response'), require('./model/InvoicingV2InvoicesGet200ResponseInvoiceHistory'), require('./model/InvoicingV2InvoicesGet200ResponseTransactionDetails'), require('./model/InvoicingV2InvoicesPost201Response'), require('./model/InvoicingV2InvoicesPost201ResponseInvoiceInformation'), require('./model/InvoicingV2InvoicesPost201ResponseOrderInformation'), require('./model/InvoicingV2InvoicesPost201ResponseOrderInformationAmountDetails'), require('./model/InvoicingV2InvoicesPost202Response'), require('./model/Invoicingv2invoiceSettingsInvoiceSettingsInformation'), require('./model/Invoicingv2invoicesCustomerInformation'), require('./model/Invoicingv2invoicesInvoiceInformation'), require('./model/Invoicingv2invoicesOrderInformation'), require('./model/Invoicingv2invoicesOrderInformationAmountDetails'), require('./model/Invoicingv2invoicesOrderInformationAmountDetailsFreight'), require('./model/Invoicingv2invoicesOrderInformationAmountDetailsTaxDetails'), require('./model/Invoicingv2invoicesOrderInformationLineItems'), require('./model/Invoicingv2invoicesidInvoiceInformation'), require('./model/KmsV2KeysAsymDeletesPost200Response'), require('./model/KmsV2KeysAsymDeletesPost200ResponseKeyInformation'), require('./model/KmsV2KeysAsymGet200Response'), require('./model/KmsV2KeysAsymGet200ResponseKeyInformation'), require('./model/KmsV2KeysAsymPost201Response'), require('./model/KmsV2KeysAsymPost201ResponseCertificateInformation'), require('./model/KmsV2KeysAsymPost201ResponseKeyInformation'), require('./model/KmsV2KeysSymDeletesPost200Response'), require('./model/KmsV2KeysSymDeletesPost200ResponseKeyInformation'), require('./model/KmsV2KeysSymGet200Response'), require('./model/KmsV2KeysSymGet200ResponseKeyInformation'), require('./model/KmsV2KeysSymPost201Response'), require('./model/KmsV2KeysSymPost201ResponseErrorInformation'), require('./model/KmsV2KeysSymPost201ResponseKeyInformation'), require('./model/Kmsv2keysasymKeyInformation'), require('./model/Kmsv2keyssymClientReferenceInformation'), require('./model/Kmsv2keyssymKeyInformation'), require('./model/Kmsv2keyssymdeletesKeyInformation'), require('./model/Kmsv2keyssymverifiKeyInformation'), require('./model/MitReversalRequest'), require('./model/MitVoidRequest'), require('./model/OctCreatePaymentRequest'), require('./model/PatchCustomerPaymentInstrumentRequest'), require('./model/PatchCustomerRequest'), require('./model/PatchCustomerShippingAddressRequest'), require('./model/PatchInstrumentIdentifierRequest'), require('./model/PatchPaymentInstrumentRequest'), require('./model/PayerAuthSetupRequest'), require('./model/PaymentInstrumentList'), require('./model/PaymentInstrumentListEmbedded'), require('./model/PaymentInstrumentListLinks'), require('./model/PaymentInstrumentListLinksFirst'), require('./model/PaymentInstrumentListLinksLast'), require('./model/PaymentInstrumentListLinksNext'), require('./model/PaymentInstrumentListLinksPrev'), require('./model/PaymentInstrumentListLinksSelf'), require('./model/PostCustomerPaymentInstrumentRequest'), require('./model/PostCustomerRequest'), require('./model/PostCustomerShippingAddressRequest'), require('./model/PostInstrumentIdentifierEnrollmentRequest'), require('./model/PostInstrumentIdentifierRequest'), require('./model/PostPaymentInstrumentRequest'), require('./model/PredefinedSubscriptionRequestBean'), require('./model/PtsV1TransactionBatchesGet200Response'), require('./model/PtsV1TransactionBatchesGet200ResponseLinks'), require('./model/PtsV1TransactionBatchesGet200ResponseLinksSelf'), require('./model/PtsV1TransactionBatchesGet200ResponseTransactionBatches'), require('./model/PtsV1TransactionBatchesGet400Response'), require('./model/PtsV1TransactionBatchesGet400ResponseErrorInformation'), require('./model/PtsV1TransactionBatchesGet400ResponseErrorInformationDetails'), require('./model/PtsV1TransactionBatchesGet500Response'), require('./model/PtsV1TransactionBatchesGet500ResponseErrorInformation'), require('./model/PtsV1TransactionBatchesIdGet200Response'), require('./model/PtsV1TransactionBatchesIdGet200ResponseLinks'), require('./model/PtsV1TransactionBatchesIdGet200ResponseLinksTransactions'), require('./model/PtsV2CreditsPost201Response'), require('./model/PtsV2CreditsPost201ResponseCreditAmountDetails'), require('./model/PtsV2CreditsPost201ResponsePaymentInformation'), require('./model/PtsV2CreditsPost201ResponseProcessingInformation'), require('./model/PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions'), require('./model/PtsV2IncrementalAuthorizationPatch201Response'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseErrorInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseLinks'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseOrderInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformationAccountFeatures'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseProcessorInformation'), require('./model/PtsV2IncrementalAuthorizationPatch400Response'), require('./model/PtsV2PaymentsCapturesPost201Response'), require('./model/PtsV2PaymentsCapturesPost201ResponseLinks'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformationInvoiceDetails'), require('./model/PtsV2PaymentsCapturesPost201ResponsePointOfSaleInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseProcessingInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsCapturesPost400Response'), require('./model/PtsV2PaymentsPost201Response'), require('./model/PtsV2PaymentsPost201ResponseBuyerInformation'), require('./model/PtsV2PaymentsPost201ResponseClientReferenceInformation'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation'), require('./model/PtsV2PaymentsPost201ResponseErrorInformation'), require('./model/PtsV2PaymentsPost201ResponseErrorInformationDetails'), require('./model/PtsV2PaymentsPost201ResponseInstallmentInformation'), require('./model/PtsV2PaymentsPost201ResponseIssuerInformation'), require('./model/PtsV2PaymentsPost201ResponseLinks'), require('./model/PtsV2PaymentsPost201ResponseLinksSelf'), require('./model/PtsV2PaymentsPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails'), require('./model/PtsV2PaymentsPost201ResponseOrderInformationRewardPointsDetails'), require('./model/PtsV2PaymentsPost201ResponsePaymentAccountInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentAccountInformationCard'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBank'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationInstrumentIdentifier'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard'), require('./model/PtsV2PaymentsPost201ResponsePaymentInsightsInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights'), require('./model/PtsV2PaymentsPost201ResponsePointOfSaleInformation'), require('./model/PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv'), require('./model/PtsV2PaymentsPost201ResponseProcessingInformation'), require('./model/PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationAchVerification'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationAvs'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationCardVerification'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationCustomer'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationRouting'), require('./model/PtsV2PaymentsPost201ResponseRiskInformation'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationInfoCodes'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationIpAddress'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationProfile'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationProviders'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationProvidersProviderName'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationRules'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationScore'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravel'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelActualFinalDestination'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDeparture'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDestination'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelLastDestination'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationVelocity'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationVelocityMorphing'), require('./model/PtsV2PaymentsPost201ResponseTokenInformation'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationCustomer'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationInstrumentIdentifier'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress'), require('./model/PtsV2PaymentsPost400Response'), require('./model/PtsV2PaymentsPost502Response'), require('./model/PtsV2PaymentsRefundPost201Response'), require('./model/PtsV2PaymentsRefundPost201ResponseLinks'), require('./model/PtsV2PaymentsRefundPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsRefundPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsRefundPost201ResponseRefundAmountDetails'), require('./model/PtsV2PaymentsRefundPost400Response'), require('./model/PtsV2PaymentsReversalsPost201Response'), require('./model/PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseIssuerInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails'), require('./model/PtsV2PaymentsReversalsPost400Response'), require('./model/PtsV2PaymentsVoidsPost201Response'), require('./model/PtsV2PaymentsVoidsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails'), require('./model/PtsV2PaymentsVoidsPost400Response'), require('./model/PtsV2PayoutsPost201Response'), require('./model/PtsV2PayoutsPost201ResponseErrorInformation'), require('./model/PtsV2PayoutsPost201ResponseMerchantInformation'), require('./model/PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor'), require('./model/PtsV2PayoutsPost201ResponseOrderInformation'), require('./model/PtsV2PayoutsPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PayoutsPost201ResponseProcessorInformation'), require('./model/PtsV2PayoutsPost201ResponseRecipientInformation'), require('./model/PtsV2PayoutsPost201ResponseRecipientInformationCard'), require('./model/PtsV2PayoutsPost400Response'), require('./model/Ptsv2creditsInstallmentInformation'), require('./model/Ptsv2creditsProcessingInformation'), require('./model/Ptsv2creditsProcessingInformationBankTransferOptions'), require('./model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer'), require('./model/Ptsv2creditsProcessingInformationJapanPaymentOptions'), require('./model/Ptsv2creditsProcessingInformationPurchaseOptions'), require('./model/Ptsv2paymentsAcquirerInformation'), require('./model/Ptsv2paymentsAggregatorInformation'), require('./model/Ptsv2paymentsAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsBuyerInformation'), require('./model/Ptsv2paymentsBuyerInformationPersonalIdentification'), require('./model/Ptsv2paymentsClientReferenceInformation'), require('./model/Ptsv2paymentsClientReferenceInformationPartner'), require('./model/Ptsv2paymentsConsumerAuthenticationInformation'), require('./model/Ptsv2paymentsConsumerAuthenticationInformationStrongAuthentication'), require('./model/Ptsv2paymentsDeviceInformation'), require('./model/Ptsv2paymentsDeviceInformationRawData'), require('./model/Ptsv2paymentsHealthCareInformation'), require('./model/Ptsv2paymentsHealthCareInformationAmountDetails'), require('./model/Ptsv2paymentsInstallmentInformation'), require('./model/Ptsv2paymentsInvoiceDetails'), require('./model/Ptsv2paymentsIssuerInformation'), require('./model/Ptsv2paymentsMerchantDefinedInformation'), require('./model/Ptsv2paymentsMerchantInformation'), require('./model/Ptsv2paymentsMerchantInformationMerchantDescriptor'), require('./model/Ptsv2paymentsMerchantInformationServiceFeeDescriptor'), require('./model/Ptsv2paymentsOrderInformation'), require('./model/Ptsv2paymentsOrderInformationAmountDetails'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsCurrencyConversion'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsSurcharge'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails'), require('./model/Ptsv2paymentsOrderInformationBillTo'), require('./model/Ptsv2paymentsOrderInformationBillToCompany'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetails'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum'), require('./model/Ptsv2paymentsOrderInformationLineItems'), require('./model/Ptsv2paymentsOrderInformationPassenger'), require('./model/Ptsv2paymentsOrderInformationShipTo'), require('./model/Ptsv2paymentsOrderInformationShippingDetails'), require('./model/Ptsv2paymentsPaymentInformation'), require('./model/Ptsv2paymentsPaymentInformationBank'), require('./model/Ptsv2paymentsPaymentInformationBankAccount'), require('./model/Ptsv2paymentsPaymentInformationCard'), require('./model/Ptsv2paymentsPaymentInformationCustomer'), require('./model/Ptsv2paymentsPaymentInformationEWallet'), require('./model/Ptsv2paymentsPaymentInformationFluidData'), require('./model/Ptsv2paymentsPaymentInformationInstrumentIdentifier'), require('./model/Ptsv2paymentsPaymentInformationLegacyToken'), require('./model/Ptsv2paymentsPaymentInformationPaymentInstrument'), require('./model/Ptsv2paymentsPaymentInformationPaymentType'), require('./model/Ptsv2paymentsPaymentInformationPaymentTypeMethod'), require('./model/Ptsv2paymentsPaymentInformationShippingAddress'), require('./model/Ptsv2paymentsPaymentInformationTokenizedCard'), require('./model/Ptsv2paymentsPointOfSaleInformation'), require('./model/Ptsv2paymentsPointOfSaleInformationEmv'), require('./model/Ptsv2paymentsProcessingInformation'), require('./model/Ptsv2paymentsProcessingInformationAuthorizationOptions'), require('./model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator'), require('./model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction'), require('./model/Ptsv2paymentsProcessingInformationBankTransferOptions'), require('./model/Ptsv2paymentsProcessingInformationCaptureOptions'), require('./model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer'), require('./model/Ptsv2paymentsProcessingInformationJapanPaymentOptions'), require('./model/Ptsv2paymentsProcessingInformationLoanOptions'), require('./model/Ptsv2paymentsProcessingInformationPurchaseOptions'), require('./model/Ptsv2paymentsProcessingInformationRecurringOptions'), require('./model/Ptsv2paymentsProcessorInformation'), require('./model/Ptsv2paymentsProcessorInformationAuthorizationOptions'), require('./model/Ptsv2paymentsPromotionInformation'), require('./model/Ptsv2paymentsRecipientInformation'), require('./model/Ptsv2paymentsRecurringPaymentInformation'), require('./model/Ptsv2paymentsRiskInformation'), require('./model/Ptsv2paymentsRiskInformationAuxiliaryData'), require('./model/Ptsv2paymentsRiskInformationBuyerHistory'), require('./model/Ptsv2paymentsRiskInformationBuyerHistoryAccountHistory'), require('./model/Ptsv2paymentsRiskInformationBuyerHistoryCustomerAccount'), require('./model/Ptsv2paymentsRiskInformationProfile'), require('./model/Ptsv2paymentsTokenInformation'), require('./model/Ptsv2paymentsTokenInformationPaymentInstrument'), require('./model/Ptsv2paymentsTokenInformationShippingAddress'), require('./model/Ptsv2paymentsTravelInformation'), require('./model/Ptsv2paymentsTravelInformationAgency'), require('./model/Ptsv2paymentsTravelInformationAutoRental'), require('./model/Ptsv2paymentsTravelInformationAutoRentalRentalAddress'), require('./model/Ptsv2paymentsTravelInformationAutoRentalReturnAddress'), require('./model/Ptsv2paymentsTravelInformationAutoRentalTaxDetails'), require('./model/Ptsv2paymentsTravelInformationLodging'), require('./model/Ptsv2paymentsTravelInformationLodgingRoom'), require('./model/Ptsv2paymentsTravelInformationTransit'), require('./model/Ptsv2paymentsTravelInformationTransitAirline'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformation'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformationService'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineLegs'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineTicketIssuer'), require('./model/Ptsv2paymentsidClientReferenceInformation'), require('./model/Ptsv2paymentsidClientReferenceInformationPartner'), require('./model/Ptsv2paymentsidMerchantInformation'), require('./model/Ptsv2paymentsidOrderInformation'), require('./model/Ptsv2paymentsidOrderInformationAmountDetails'), require('./model/Ptsv2paymentsidProcessingInformation'), require('./model/Ptsv2paymentsidProcessingInformationAuthorizationOptions'), require('./model/Ptsv2paymentsidProcessingInformationAuthorizationOptionsInitiator'), require('./model/Ptsv2paymentsidTravelInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsidcapturesBuyerInformation'), require('./model/Ptsv2paymentsidcapturesDeviceInformation'), require('./model/Ptsv2paymentsidcapturesInstallmentInformation'), require('./model/Ptsv2paymentsidcapturesMerchantInformation'), require('./model/Ptsv2paymentsidcapturesOrderInformation'), require('./model/Ptsv2paymentsidcapturesOrderInformationAmountDetails'), require('./model/Ptsv2paymentsidcapturesOrderInformationBillTo'), require('./model/Ptsv2paymentsidcapturesOrderInformationInvoiceDetails'), require('./model/Ptsv2paymentsidcapturesOrderInformationShipTo'), require('./model/Ptsv2paymentsidcapturesOrderInformationShippingDetails'), require('./model/Ptsv2paymentsidcapturesPaymentInformation'), require('./model/Ptsv2paymentsidcapturesPaymentInformationCard'), require('./model/Ptsv2paymentsidcapturesPointOfSaleInformation'), require('./model/Ptsv2paymentsidcapturesPointOfSaleInformationEmv'), require('./model/Ptsv2paymentsidcapturesProcessingInformation'), require('./model/Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions'), require('./model/Ptsv2paymentsidcapturesProcessingInformationCaptureOptions'), require('./model/Ptsv2paymentsidrefundsMerchantInformation'), require('./model/Ptsv2paymentsidrefundsOrderInformation'), require('./model/Ptsv2paymentsidrefundsOrderInformationLineItems'), require('./model/Ptsv2paymentsidrefundsPaymentInformation'), require('./model/Ptsv2paymentsidrefundsPaymentInformationBank'), require('./model/Ptsv2paymentsidrefundsPaymentInformationCard'), require('./model/Ptsv2paymentsidrefundsPointOfSaleInformation'), require('./model/Ptsv2paymentsidrefundsProcessingInformation'), require('./model/Ptsv2paymentsidrefundsProcessingInformationRecurringOptions'), require('./model/Ptsv2paymentsidreversalsClientReferenceInformation'), require('./model/Ptsv2paymentsidreversalsClientReferenceInformationPartner'), require('./model/Ptsv2paymentsidreversalsOrderInformation'), require('./model/Ptsv2paymentsidreversalsOrderInformationAmountDetails'), require('./model/Ptsv2paymentsidreversalsOrderInformationLineItems'), require('./model/Ptsv2paymentsidreversalsPointOfSaleInformation'), require('./model/Ptsv2paymentsidreversalsPointOfSaleInformationEmv'), require('./model/Ptsv2paymentsidreversalsProcessingInformation'), require('./model/Ptsv2paymentsidreversalsReversalInformation'), require('./model/Ptsv2paymentsidreversalsReversalInformationAmountDetails'), require('./model/Ptsv2paymentsidvoidsOrderInformation'), require('./model/Ptsv2paymentsidvoidsPaymentInformation'), require('./model/Ptsv2payoutsClientReferenceInformation'), require('./model/Ptsv2payoutsMerchantInformation'), require('./model/Ptsv2payoutsMerchantInformationMerchantDescriptor'), require('./model/Ptsv2payoutsOrderInformation'), require('./model/Ptsv2payoutsOrderInformationAmountDetails'), require('./model/Ptsv2payoutsOrderInformationAmountDetailsSurcharge'), require('./model/Ptsv2payoutsOrderInformationBillTo'), require('./model/Ptsv2payoutsPaymentInformation'), require('./model/Ptsv2payoutsPaymentInformationCard'), require('./model/Ptsv2payoutsProcessingInformation'), require('./model/Ptsv2payoutsProcessingInformationFundingOptions'), require('./model/Ptsv2payoutsProcessingInformationFundingOptionsInitiator'), require('./model/Ptsv2payoutsProcessingInformationPayoutsOptions'), require('./model/Ptsv2payoutsRecipientInformation'), require('./model/Ptsv2payoutsSenderInformation'), require('./model/Ptsv2payoutsSenderInformationAccount'), require('./model/RefundCaptureRequest'), require('./model/RefundPaymentRequest'), require('./model/ReportingV3ChargebackDetailsGet200Response'), require('./model/ReportingV3ChargebackDetailsGet200ResponseChargebackDetails'), require('./model/ReportingV3ChargebackSummariesGet200Response'), require('./model/ReportingV3ChargebackSummariesGet200ResponseChargebackSummaries'), require('./model/ReportingV3ConversionDetailsGet200Response'), require('./model/ReportingV3ConversionDetailsGet200ResponseConversionDetails'), require('./model/ReportingV3ConversionDetailsGet200ResponseNotes'), require('./model/ReportingV3InterchangeClearingLevelDetailsGet200Response'), require('./model/ReportingV3InterchangeClearingLevelDetailsGet200ResponseInterchangeClearingLevelDetails'), require('./model/ReportingV3NetFundingsGet200Response'), require('./model/ReportingV3NetFundingsGet200ResponseNetFundingSummaries'), require('./model/ReportingV3NetFundingsGet200ResponseTotalPurchases'), require('./model/ReportingV3NotificationofChangesGet200Response'), require('./model/ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges'), require('./model/ReportingV3PaymentBatchSummariesGet200Response'), require('./model/ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries'), require('./model/ReportingV3PurchaseRefundDetailsGet200Response'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseOthers'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlements'), require('./model/ReportingV3ReportDefinitionsGet200Response'), require('./model/ReportingV3ReportDefinitionsGet200ResponseReportDefinitions'), require('./model/ReportingV3ReportDefinitionsNameGet200Response'), require('./model/ReportingV3ReportDefinitionsNameGet200ResponseAttributes'), require('./model/ReportingV3ReportDefinitionsNameGet200ResponseDefaultSettings'), require('./model/ReportingV3ReportSubscriptionsGet200Response'), require('./model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions'), require('./model/ReportingV3ReportsGet200Response'), require('./model/ReportingV3ReportsGet200ResponseLink'), require('./model/ReportingV3ReportsGet200ResponseLinkReportDownload'), require('./model/ReportingV3ReportsGet200ResponseReportSearchResults'), require('./model/ReportingV3ReportsIdGet200Response'), require('./model/ReportingV3RetrievalDetailsGet200Response'), require('./model/ReportingV3RetrievalDetailsGet200ResponseRetrievalDetails'), require('./model/ReportingV3RetrievalSummariesGet200Response'), require('./model/Reportingv3ReportDownloadsGet400Response'), require('./model/Reportingv3ReportDownloadsGet400ResponseDetails'), require('./model/Reportingv3reportsReportFilters'), require('./model/Reportingv3reportsReportPreferences'), require('./model/RiskV1AddressVerificationsPost201Response'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddressAddress1'), require('./model/RiskV1AddressVerificationsPost201ResponseErrorInformation'), require('./model/RiskV1AuthenticationResultsPost201Response'), require('./model/RiskV1AuthenticationResultsPost201ResponseConsumerAuthenticationInformation'), require('./model/RiskV1AuthenticationSetupsPost201Response'), require('./model/RiskV1AuthenticationSetupsPost201ResponseConsumerAuthenticationInformation'), require('./model/RiskV1AuthenticationSetupsPost201ResponseErrorInformation'), require('./model/RiskV1AuthenticationsPost201Response'), require('./model/RiskV1AuthenticationsPost201ResponseErrorInformation'), require('./model/RiskV1AuthenticationsPost400Response'), require('./model/RiskV1AuthenticationsPost400Response1'), require('./model/RiskV1DecisionsPost201Response'), require('./model/RiskV1DecisionsPost201ResponseClientReferenceInformation'), require('./model/RiskV1DecisionsPost201ResponseConsumerAuthenticationInformation'), require('./model/RiskV1DecisionsPost201ResponseErrorInformation'), require('./model/RiskV1DecisionsPost201ResponseOrderInformation'), require('./model/RiskV1DecisionsPost201ResponseOrderInformationAmountDetails'), require('./model/RiskV1DecisionsPost201ResponsePaymentInformation'), require('./model/RiskV1DecisionsPost400Response'), require('./model/RiskV1DecisionsPost400Response1'), require('./model/RiskV1ExportComplianceInquiriesPost201Response'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseErrorInformation'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformation'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchList'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchListMatches'), require('./model/RiskV1UpdatePost201Response'), require('./model/Riskv1addressverificationsBuyerInformation'), require('./model/Riskv1addressverificationsOrderInformation'), require('./model/Riskv1addressverificationsOrderInformationBillTo'), require('./model/Riskv1addressverificationsOrderInformationLineItems'), require('./model/Riskv1addressverificationsOrderInformationShipTo'), require('./model/Riskv1authenticationresultsConsumerAuthenticationInformation'), require('./model/Riskv1authenticationresultsDeviceInformation'), require('./model/Riskv1authenticationresultsOrderInformation'), require('./model/Riskv1authenticationresultsOrderInformationAmountDetails'), require('./model/Riskv1authenticationresultsOrderInformationLineItems'), require('./model/Riskv1authenticationresultsPaymentInformation'), require('./model/Riskv1authenticationresultsPaymentInformationCard'), require('./model/Riskv1authenticationresultsPaymentInformationFluidData'), require('./model/Riskv1authenticationresultsPaymentInformationTokenizedCard'), require('./model/Riskv1authenticationsBuyerInformation'), require('./model/Riskv1authenticationsDeviceInformation'), require('./model/Riskv1authenticationsOrderInformation'), require('./model/Riskv1authenticationsOrderInformationAmountDetails'), require('./model/Riskv1authenticationsOrderInformationBillTo'), require('./model/Riskv1authenticationsOrderInformationLineItems'), require('./model/Riskv1authenticationsPaymentInformation'), require('./model/Riskv1authenticationsPaymentInformationCard'), require('./model/Riskv1authenticationsPaymentInformationTokenizedCard'), require('./model/Riskv1authenticationsRiskInformation'), require('./model/Riskv1authenticationsTravelInformation'), require('./model/Riskv1authenticationsetupsPaymentInformation'), require('./model/Riskv1authenticationsetupsPaymentInformationCard'), require('./model/Riskv1authenticationsetupsPaymentInformationCustomer'), require('./model/Riskv1authenticationsetupsPaymentInformationFluidData'), require('./model/Riskv1authenticationsetupsPaymentInformationTokenizedCard'), require('./model/Riskv1authenticationsetupsProcessingInformation'), require('./model/Riskv1authenticationsetupsTokenInformation'), require('./model/Riskv1decisionsBuyerInformation'), require('./model/Riskv1decisionsClientReferenceInformation'), require('./model/Riskv1decisionsClientReferenceInformationPartner'), require('./model/Riskv1decisionsConsumerAuthenticationInformation'), require('./model/Riskv1decisionsConsumerAuthenticationInformationStrongAuthentication'), require('./model/Riskv1decisionsDeviceInformation'), require('./model/Riskv1decisionsMerchantDefinedInformation'), require('./model/Riskv1decisionsMerchantInformation'), require('./model/Riskv1decisionsMerchantInformationMerchantDescriptor'), require('./model/Riskv1decisionsOrderInformation'), require('./model/Riskv1decisionsOrderInformationAmountDetails'), require('./model/Riskv1decisionsOrderInformationBillTo'), require('./model/Riskv1decisionsOrderInformationLineItems'), require('./model/Riskv1decisionsOrderInformationShipTo'), require('./model/Riskv1decisionsOrderInformationShippingDetails'), require('./model/Riskv1decisionsPaymentInformation'), require('./model/Riskv1decisionsPaymentInformationCard'), require('./model/Riskv1decisionsPaymentInformationTokenizedCard'), require('./model/Riskv1decisionsProcessingInformation'), require('./model/Riskv1decisionsProcessorInformation'), require('./model/Riskv1decisionsProcessorInformationAvs'), require('./model/Riskv1decisionsProcessorInformationCardVerification'), require('./model/Riskv1decisionsRiskInformation'), require('./model/Riskv1decisionsTravelInformation'), require('./model/Riskv1decisionsTravelInformationLegs'), require('./model/Riskv1decisionsTravelInformationPassengers'), require('./model/Riskv1decisionsidmarkingRiskInformation'), require('./model/Riskv1decisionsidmarkingRiskInformationMarkingDetails'), require('./model/Riskv1exportcomplianceinquiriesDeviceInformation'), require('./model/Riskv1exportcomplianceinquiriesExportComplianceInformation'), require('./model/Riskv1exportcomplianceinquiriesExportComplianceInformationWeights'), require('./model/Riskv1exportcomplianceinquiriesOrderInformation'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationBillTo'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationBillToCompany'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationLineItems'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationShipTo'), require('./model/Riskv1liststypeentriesBuyerInformation'), require('./model/Riskv1liststypeentriesClientReferenceInformation'), require('./model/Riskv1liststypeentriesDeviceInformation'), require('./model/Riskv1liststypeentriesOrderInformation'), require('./model/Riskv1liststypeentriesOrderInformationAddress'), require('./model/Riskv1liststypeentriesOrderInformationBillTo'), require('./model/Riskv1liststypeentriesOrderInformationLineItems'), require('./model/Riskv1liststypeentriesOrderInformationShipTo'), require('./model/Riskv1liststypeentriesPaymentInformation'), require('./model/Riskv1liststypeentriesPaymentInformationBank'), require('./model/Riskv1liststypeentriesPaymentInformationCard'), require('./model/Riskv1liststypeentriesRiskInformation'), require('./model/Riskv1liststypeentriesRiskInformationMarkingDetails'), require('./model/SearchRequest'), require('./model/ShippingAddressListForCustomer'), require('./model/ShippingAddressListForCustomerEmbedded'), require('./model/ShippingAddressListForCustomerLinks'), require('./model/ShippingAddressListForCustomerLinksFirst'), require('./model/ShippingAddressListForCustomerLinksLast'), require('./model/ShippingAddressListForCustomerLinksNext'), require('./model/ShippingAddressListForCustomerLinksPrev'), require('./model/ShippingAddressListForCustomerLinksSelf'), require('./model/TaxRequest'), require('./model/TmsV2CustomersResponse'), require('./model/Tmsv2customersBuyerInformation'), require('./model/Tmsv2customersClientReferenceInformation'), require('./model/Tmsv2customersDefaultPaymentInstrument'), require('./model/Tmsv2customersDefaultShippingAddress'), require('./model/Tmsv2customersEmbedded'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrument'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBankAccount'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBillTo'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationIssuedBy'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationPersonalIdentification'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCardTokenizedInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbedded'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBillTo'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierIssuer'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinks'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksPaymentInstruments'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksSelf'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierMetadata'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptions'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiator'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCardCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentInstrumentIdentifier'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinks'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinksSelf'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformationMerchantDescriptor'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMetadata'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformationBankTransferOptions'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddress'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressLinks'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressLinksCustomer'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressLinksSelf'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressMetadata'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressShipTo'), require('./model/Tmsv2customersLinks'), require('./model/Tmsv2customersLinksPaymentInstruments'), require('./model/Tmsv2customersLinksSelf'), require('./model/Tmsv2customersLinksShippingAddress'), require('./model/Tmsv2customersMerchantDefinedInformation'), require('./model/Tmsv2customersMetadata'), require('./model/Tmsv2customersObjectInformation'), require('./model/TokenizeRequest'), require('./model/TssV2TransactionsGet200Response'), require('./model/TssV2TransactionsGet200ResponseApplicationInformation'), require('./model/TssV2TransactionsGet200ResponseApplicationInformationApplications'), require('./model/TssV2TransactionsGet200ResponseBuyerInformation'), require('./model/TssV2TransactionsGet200ResponseClientReferenceInformation'), require('./model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner'), require('./model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation'), require('./model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication'), require('./model/TssV2TransactionsGet200ResponseDeviceInformation'), require('./model/TssV2TransactionsGet200ResponseErrorInformation'), require('./model/TssV2TransactionsGet200ResponseFraudMarkingInformation'), require('./model/TssV2TransactionsGet200ResponseInstallmentInformation'), require('./model/TssV2TransactionsGet200ResponseLinks'), require('./model/TssV2TransactionsGet200ResponseMerchantInformation'), require('./model/TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor'), require('./model/TssV2TransactionsGet200ResponseOrderInformation'), require('./model/TssV2TransactionsGet200ResponseOrderInformationAmountDetails'), require('./model/TssV2TransactionsGet200ResponseOrderInformationBillTo'), require('./model/TssV2TransactionsGet200ResponseOrderInformationInvoiceDetails'), require('./model/TssV2TransactionsGet200ResponseOrderInformationLineItems'), require('./model/TssV2TransactionsGet200ResponseOrderInformationShipTo'), require('./model/TssV2TransactionsGet200ResponseOrderInformationShippingDetails'), require('./model/TssV2TransactionsGet200ResponsePaymentInformation'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationBank'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationBankAccount'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationBankMandate'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationCard'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationCustomer'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationInvoice'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType'), require('./model/TssV2TransactionsGet200ResponsePointOfSaleInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptionsInitiator'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions'), require('./model/TssV2TransactionsGet200ResponseProcessorInformation'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationMultiProcessorRouting'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationProcessor'), require('./model/TssV2TransactionsGet200ResponseRiskInformation'), require('./model/TssV2TransactionsGet200ResponseRiskInformationProfile'), require('./model/TssV2TransactionsGet200ResponseRiskInformationRules'), require('./model/TssV2TransactionsGet200ResponseRiskInformationScore'), require('./model/TssV2TransactionsGet200ResponseSenderInformation'), require('./model/TssV2TransactionsGet200ResponseTokenInformation'), require('./model/TssV2TransactionsPost201Response'), require('./model/TssV2TransactionsPost201ResponseEmbedded'), require('./model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformationApplications'), require('./model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedLinks'), require('./model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBank'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBankAccount'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCustomer'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner'), require('./model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedProcessorInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedRiskInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders'), require('./model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint'), require('./model/TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries'), require('./model/TssV2TransactionsPost400Response'), require('./model/UmsV1UsersGet200Response'), require('./model/UmsV1UsersGet200ResponseAccountInformation'), require('./model/UmsV1UsersGet200ResponseContactInformation'), require('./model/UmsV1UsersGet200ResponseOrganizationInformation'), require('./model/UmsV1UsersGet200ResponseUsers'), require('./model/UpdateInvoiceRequest'), require('./model/V1FileDetailsGet200Response'), require('./model/V1FileDetailsGet200ResponseFileDetails'), require('./model/V1FileDetailsGet200ResponseLinks'), require('./model/V1FileDetailsGet200ResponseLinksFiles'), require('./model/V1FileDetailsGet200ResponseLinksSelf'), require('./model/ValidateExportComplianceRequest'), require('./model/ValidateRequest'), require('./model/VasV2PaymentsPost201Response'), require('./model/VasV2PaymentsPost201ResponseLinks'), require('./model/VasV2PaymentsPost201ResponseOrderInformation'), require('./model/VasV2PaymentsPost201ResponseOrderInformationJurisdiction'), require('./model/VasV2PaymentsPost201ResponseOrderInformationLineItems'), require('./model/VasV2PaymentsPost201ResponseOrderInformationTaxDetails'), require('./model/VasV2PaymentsPost201ResponseTaxInformation'), require('./model/VasV2PaymentsPost400Response'), require('./model/VasV2TaxVoid200Response'), require('./model/VasV2TaxVoid200ResponseVoidAmountDetails'), require('./model/VasV2TaxVoidsPost400Response'), require('./model/Vasv2taxBuyerInformation'), require('./model/Vasv2taxClientReferenceInformation'), require('./model/Vasv2taxMerchantInformation'), require('./model/Vasv2taxOrderInformation'), require('./model/Vasv2taxOrderInformationBillTo'), require('./model/Vasv2taxOrderInformationInvoiceDetails'), require('./model/Vasv2taxOrderInformationLineItems'), require('./model/Vasv2taxOrderInformationOrderAcceptance'), require('./model/Vasv2taxOrderInformationOrderOrigin'), require('./model/Vasv2taxOrderInformationShipTo'), require('./model/Vasv2taxOrderInformationShippingDetails'), require('./model/Vasv2taxTaxInformation'), require('./model/Vasv2taxidClientReferenceInformation'), require('./model/Vasv2taxidClientReferenceInformationPartner'), require('./model/VerifyCustomerAddressRequest'), require('./model/VoidCaptureRequest'), require('./model/VoidCreditRequest'), require('./model/VoidPaymentRequest'), require('./model/VoidRefundRequest'), require('./model/VoidTaxRequest'), require('./model/AccessTokenResponse'), require('./model/BadRequestError'), require('./model/CreateAccessTokenRequest'), require('./model/ResourceNotFoundError'), require('./model/UnauthorizedClientError'), require('./api/AsymmetricKeyManagementApi'), require('./api/CaptureApi'), require('./api/ChargebackDetailsApi'), require('./api/ChargebackSummariesApi'), require('./api/ConversionDetailsApi'), require('./api/CreditApi'), require('./api/CustomerApi'), require('./api/CustomerPaymentInstrumentApi'), require('./api/CustomerShippingAddressApi'), require('./api/DecisionManagerApi'), require('./api/DownloadDTDApi'), require('./api/DownloadXSDApi'), require('./api/InstrumentIdentifierApi'), require('./api/InterchangeClearingLevelDetailsApi'), require('./api/InvoiceSettingsApi'), require('./api/InvoicesApi'), require('./api/KeyGenerationApi'), require('./api/NetFundingsApi'), require('./api/NotificationOfChangesApi'), require('./api/PayerAuthenticationApi'), require('./api/PaymentBatchSummariesApi'), require('./api/PaymentInstrumentApi'), require('./api/PaymentsApi'), require('./api/PayoutsApi'), require('./api/PurchaseAndRefundDetailsApi'), require('./api/RefundApi'), require('./api/ReportDefinitionsApi'), require('./api/ReportDownloadsApi'), require('./api/ReportSubscriptionsApi'), require('./api/ReportsApi'), require('./api/RetrievalDetailsApi'), require('./api/RetrievalSummariesApi'), require('./api/ReversalApi'), require('./api/SearchTransactionsApi'), require('./api/SecureFileShareApi'), require('./api/SymmetricKeyManagementApi'), require('./api/TaxesApi'), require('./api/TokenizationApi'), require('./api/TransactionBatchesApi'), require('./api/TransactionDetailsApi'), require('./api/UserManagementApi'), require('./api/UserManagementSearchApi'), require('./api/VerificationApi'), require('./api/VoidApi'), require('./api/OAuthApi')); + module.exports = factory(require('./ApiClient'), require('./model/AddNegativeListRequest'), require('./model/AuthReversalRequest'), require('./model/CapturePaymentRequest'), require('./model/CheckPayerAuthEnrollmentRequest'), require('./model/CreateAdhocReportRequest'), require('./model/CreateBundledDecisionManagerCaseRequest'), require('./model/CreateCreditRequest'), require('./model/CreateInvoiceRequest'), require('./model/CreateP12KeysRequest'), require('./model/CreatePaymentRequest'), require('./model/CreateReportSubscriptionRequest'), require('./model/CreateSearchRequest'), require('./model/CreateSharedSecretKeysRequest'), require('./model/CreateSharedSecretKeysVerifiRequest'), require('./model/DeleteBulkP12KeysRequest'), require('./model/DeleteBulkSymmetricKeysRequest'), require('./model/FlexV1KeysPost200Response'), require('./model/FlexV1KeysPost200ResponseDer'), require('./model/FlexV1KeysPost200ResponseJwk'), require('./model/FlexV1TokensPost200Response'), require('./model/Flexv1tokensCardInfo'), require('./model/FraudMarkingActionRequest'), require('./model/GeneratePublicKeyRequest'), require('./model/IncrementAuthRequest'), require('./model/InlineResponse400'), require('./model/InlineResponse4001'), require('./model/InlineResponse4001Fields'), require('./model/InlineResponse4002'), require('./model/InlineResponse400Details'), require('./model/InlineResponse400Errors'), require('./model/InlineResponse502'), require('./model/InlineResponseDefault'), require('./model/InlineResponseDefaultLinks'), require('./model/InlineResponseDefaultLinksNext'), require('./model/InlineResponseDefaultResponseStatus'), require('./model/InlineResponseDefaultResponseStatusDetails'), require('./model/InvoiceSettingsRequest'), require('./model/InvoicingV2InvoiceSettingsGet200Response'), require('./model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformation'), require('./model/InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformationHeaderStyle'), require('./model/InvoicingV2InvoicesAllGet200Response'), require('./model/InvoicingV2InvoicesAllGet200ResponseCustomerInformation'), require('./model/InvoicingV2InvoicesAllGet200ResponseInvoiceInformation'), require('./model/InvoicingV2InvoicesAllGet200ResponseInvoices'), require('./model/InvoicingV2InvoicesAllGet200ResponseLinks'), require('./model/InvoicingV2InvoicesAllGet200ResponseLinks1'), require('./model/InvoicingV2InvoicesAllGet200ResponseOrderInformation'), require('./model/InvoicingV2InvoicesAllGet200ResponseOrderInformationAmountDetails'), require('./model/InvoicingV2InvoicesAllGet400Response'), require('./model/InvoicingV2InvoicesAllGet404Response'), require('./model/InvoicingV2InvoicesAllGet502Response'), require('./model/InvoicingV2InvoicesGet200Response'), require('./model/InvoicingV2InvoicesGet200ResponseInvoiceHistory'), require('./model/InvoicingV2InvoicesGet200ResponseTransactionDetails'), require('./model/InvoicingV2InvoicesPost201Response'), require('./model/InvoicingV2InvoicesPost201ResponseInvoiceInformation'), require('./model/InvoicingV2InvoicesPost201ResponseOrderInformation'), require('./model/InvoicingV2InvoicesPost201ResponseOrderInformationAmountDetails'), require('./model/InvoicingV2InvoicesPost202Response'), require('./model/Invoicingv2invoiceSettingsInvoiceSettingsInformation'), require('./model/Invoicingv2invoicesCustomerInformation'), require('./model/Invoicingv2invoicesInvoiceInformation'), require('./model/Invoicingv2invoicesOrderInformation'), require('./model/Invoicingv2invoicesOrderInformationAmountDetails'), require('./model/Invoicingv2invoicesOrderInformationAmountDetailsFreight'), require('./model/Invoicingv2invoicesOrderInformationAmountDetailsTaxDetails'), require('./model/Invoicingv2invoicesOrderInformationLineItems'), require('./model/Invoicingv2invoicesidInvoiceInformation'), require('./model/KmsV2KeysAsymDeletesPost200Response'), require('./model/KmsV2KeysAsymDeletesPost200ResponseKeyInformation'), require('./model/KmsV2KeysAsymGet200Response'), require('./model/KmsV2KeysAsymGet200ResponseKeyInformation'), require('./model/KmsV2KeysAsymPost201Response'), require('./model/KmsV2KeysAsymPost201ResponseCertificateInformation'), require('./model/KmsV2KeysAsymPost201ResponseKeyInformation'), require('./model/KmsV2KeysSymDeletesPost200Response'), require('./model/KmsV2KeysSymDeletesPost200ResponseKeyInformation'), require('./model/KmsV2KeysSymGet200Response'), require('./model/KmsV2KeysSymGet200ResponseKeyInformation'), require('./model/KmsV2KeysSymPost201Response'), require('./model/KmsV2KeysSymPost201ResponseErrorInformation'), require('./model/KmsV2KeysSymPost201ResponseKeyInformation'), require('./model/Kmsv2keysasymKeyInformation'), require('./model/Kmsv2keyssymClientReferenceInformation'), require('./model/Kmsv2keyssymKeyInformation'), require('./model/Kmsv2keyssymdeletesKeyInformation'), require('./model/Kmsv2keyssymverifiKeyInformation'), require('./model/MitReversalRequest'), require('./model/MitVoidRequest'), require('./model/OctCreatePaymentRequest'), require('./model/PatchCustomerPaymentInstrumentRequest'), require('./model/PatchCustomerRequest'), require('./model/PatchCustomerShippingAddressRequest'), require('./model/PatchInstrumentIdentifierRequest'), require('./model/PatchPaymentInstrumentRequest'), require('./model/PayerAuthSetupRequest'), require('./model/PaymentInstrumentList'), require('./model/PaymentInstrumentListEmbedded'), require('./model/PaymentInstrumentListLinks'), require('./model/PaymentInstrumentListLinksFirst'), require('./model/PaymentInstrumentListLinksLast'), require('./model/PaymentInstrumentListLinksNext'), require('./model/PaymentInstrumentListLinksPrev'), require('./model/PaymentInstrumentListLinksSelf'), require('./model/PostCustomerPaymentInstrumentRequest'), require('./model/PostCustomerRequest'), require('./model/PostCustomerShippingAddressRequest'), require('./model/PostInstrumentIdentifierEnrollmentRequest'), require('./model/PostInstrumentIdentifierRequest'), require('./model/PostPaymentInstrumentRequest'), require('./model/PredefinedSubscriptionRequestBean'), require('./model/PtsV1TransactionBatchesGet200Response'), require('./model/PtsV1TransactionBatchesGet200ResponseLinks'), require('./model/PtsV1TransactionBatchesGet200ResponseLinksSelf'), require('./model/PtsV1TransactionBatchesGet200ResponseTransactionBatches'), require('./model/PtsV1TransactionBatchesGet400Response'), require('./model/PtsV1TransactionBatchesGet400ResponseErrorInformation'), require('./model/PtsV1TransactionBatchesGet400ResponseErrorInformationDetails'), require('./model/PtsV1TransactionBatchesGet500Response'), require('./model/PtsV1TransactionBatchesGet500ResponseErrorInformation'), require('./model/PtsV1TransactionBatchesIdGet200Response'), require('./model/PtsV1TransactionBatchesIdGet200ResponseLinks'), require('./model/PtsV1TransactionBatchesIdGet200ResponseLinksTransactions'), require('./model/PtsV2CreditsPost201Response'), require('./model/PtsV2CreditsPost201ResponseCreditAmountDetails'), require('./model/PtsV2CreditsPost201ResponsePaymentInformation'), require('./model/PtsV2CreditsPost201ResponseProcessingInformation'), require('./model/PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions'), require('./model/PtsV2IncrementalAuthorizationPatch201Response'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseErrorInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseLinks'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseOrderInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformation'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformationAccountFeatures'), require('./model/PtsV2IncrementalAuthorizationPatch201ResponseProcessorInformation'), require('./model/PtsV2IncrementalAuthorizationPatch400Response'), require('./model/PtsV2PaymentsCapturesPost201Response'), require('./model/PtsV2PaymentsCapturesPost201ResponseLinks'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PaymentsCapturesPost201ResponseOrderInformationInvoiceDetails'), require('./model/PtsV2PaymentsCapturesPost201ResponsePointOfSaleInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseProcessingInformation'), require('./model/PtsV2PaymentsCapturesPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsCapturesPost400Response'), require('./model/PtsV2PaymentsPost201Response'), require('./model/PtsV2PaymentsPost201ResponseBuyerInformation'), require('./model/PtsV2PaymentsPost201ResponseClientReferenceInformation'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication'), require('./model/PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation'), require('./model/PtsV2PaymentsPost201ResponseErrorInformation'), require('./model/PtsV2PaymentsPost201ResponseErrorInformationDetails'), require('./model/PtsV2PaymentsPost201ResponseInstallmentInformation'), require('./model/PtsV2PaymentsPost201ResponseIssuerInformation'), require('./model/PtsV2PaymentsPost201ResponseLinks'), require('./model/PtsV2PaymentsPost201ResponseLinksSelf'), require('./model/PtsV2PaymentsPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails'), require('./model/PtsV2PaymentsPost201ResponseOrderInformationRewardPointsDetails'), require('./model/PtsV2PaymentsPost201ResponsePaymentAccountInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentAccountInformationCard'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBank'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationBankAccount'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationInstrumentIdentifier'), require('./model/PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard'), require('./model/PtsV2PaymentsPost201ResponsePaymentInsightsInformation'), require('./model/PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights'), require('./model/PtsV2PaymentsPost201ResponsePointOfSaleInformation'), require('./model/PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv'), require('./model/PtsV2PaymentsPost201ResponseProcessingInformation'), require('./model/PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationAchVerification'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationAvs'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationCardVerification'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationCustomer'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice'), require('./model/PtsV2PaymentsPost201ResponseProcessorInformationRouting'), require('./model/PtsV2PaymentsPost201ResponseRiskInformation'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationInfoCodes'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationIpAddress'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationProfile'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationProviders'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationProvidersProviderName'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationRules'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationScore'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravel'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelActualFinalDestination'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDeparture'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDestination'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationTravelLastDestination'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationVelocity'), require('./model/PtsV2PaymentsPost201ResponseRiskInformationVelocityMorphing'), require('./model/PtsV2PaymentsPost201ResponseTokenInformation'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationCustomer'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationInstrumentIdentifier'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument'), require('./model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress'), require('./model/PtsV2PaymentsPost400Response'), require('./model/PtsV2PaymentsPost502Response'), require('./model/PtsV2PaymentsRefundPost201Response'), require('./model/PtsV2PaymentsRefundPost201ResponseLinks'), require('./model/PtsV2PaymentsRefundPost201ResponseOrderInformation'), require('./model/PtsV2PaymentsRefundPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsRefundPost201ResponseRefundAmountDetails'), require('./model/PtsV2PaymentsRefundPost400Response'), require('./model/PtsV2PaymentsReversalsPost201Response'), require('./model/PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseIssuerInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails'), require('./model/PtsV2PaymentsReversalsPost400Response'), require('./model/PtsV2PaymentsVoidsPost201Response'), require('./model/PtsV2PaymentsVoidsPost201ResponseProcessorInformation'), require('./model/PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails'), require('./model/PtsV2PaymentsVoidsPost400Response'), require('./model/PtsV2PayoutsPost201Response'), require('./model/PtsV2PayoutsPost201ResponseErrorInformation'), require('./model/PtsV2PayoutsPost201ResponseMerchantInformation'), require('./model/PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor'), require('./model/PtsV2PayoutsPost201ResponseOrderInformation'), require('./model/PtsV2PayoutsPost201ResponseOrderInformationAmountDetails'), require('./model/PtsV2PayoutsPost201ResponseProcessorInformation'), require('./model/PtsV2PayoutsPost201ResponseRecipientInformation'), require('./model/PtsV2PayoutsPost201ResponseRecipientInformationCard'), require('./model/PtsV2PayoutsPost400Response'), require('./model/Ptsv2creditsInstallmentInformation'), require('./model/Ptsv2creditsProcessingInformation'), require('./model/Ptsv2creditsProcessingInformationBankTransferOptions'), require('./model/Ptsv2creditsProcessingInformationElectronicBenefitsTransfer'), require('./model/Ptsv2creditsProcessingInformationJapanPaymentOptions'), require('./model/Ptsv2creditsProcessingInformationPurchaseOptions'), require('./model/Ptsv2paymentsAcquirerInformation'), require('./model/Ptsv2paymentsAggregatorInformation'), require('./model/Ptsv2paymentsAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsBuyerInformation'), require('./model/Ptsv2paymentsBuyerInformationPersonalIdentification'), require('./model/Ptsv2paymentsClientReferenceInformation'), require('./model/Ptsv2paymentsClientReferenceInformationPartner'), require('./model/Ptsv2paymentsConsumerAuthenticationInformation'), require('./model/Ptsv2paymentsConsumerAuthenticationInformationStrongAuthentication'), require('./model/Ptsv2paymentsDeviceInformation'), require('./model/Ptsv2paymentsDeviceInformationRawData'), require('./model/Ptsv2paymentsHealthCareInformation'), require('./model/Ptsv2paymentsHealthCareInformationAmountDetails'), require('./model/Ptsv2paymentsInstallmentInformation'), require('./model/Ptsv2paymentsInvoiceDetails'), require('./model/Ptsv2paymentsIssuerInformation'), require('./model/Ptsv2paymentsMerchantDefinedInformation'), require('./model/Ptsv2paymentsMerchantInformation'), require('./model/Ptsv2paymentsMerchantInformationMerchantDescriptor'), require('./model/Ptsv2paymentsMerchantInformationServiceFeeDescriptor'), require('./model/Ptsv2paymentsOrderInformation'), require('./model/Ptsv2paymentsOrderInformationAmountDetails'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsCurrencyConversion'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsSurcharge'), require('./model/Ptsv2paymentsOrderInformationAmountDetailsTaxDetails'), require('./model/Ptsv2paymentsOrderInformationBillTo'), require('./model/Ptsv2paymentsOrderInformationBillToCompany'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetails'), require('./model/Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum'), require('./model/Ptsv2paymentsOrderInformationLineItems'), require('./model/Ptsv2paymentsOrderInformationPassenger'), require('./model/Ptsv2paymentsOrderInformationShipTo'), require('./model/Ptsv2paymentsOrderInformationShippingDetails'), require('./model/Ptsv2paymentsPaymentInformation'), require('./model/Ptsv2paymentsPaymentInformationBank'), require('./model/Ptsv2paymentsPaymentInformationBankAccount'), require('./model/Ptsv2paymentsPaymentInformationCard'), require('./model/Ptsv2paymentsPaymentInformationCustomer'), require('./model/Ptsv2paymentsPaymentInformationEWallet'), require('./model/Ptsv2paymentsPaymentInformationFluidData'), require('./model/Ptsv2paymentsPaymentInformationInstrumentIdentifier'), require('./model/Ptsv2paymentsPaymentInformationLegacyToken'), require('./model/Ptsv2paymentsPaymentInformationPaymentInstrument'), require('./model/Ptsv2paymentsPaymentInformationPaymentType'), require('./model/Ptsv2paymentsPaymentInformationPaymentTypeMethod'), require('./model/Ptsv2paymentsPaymentInformationShippingAddress'), require('./model/Ptsv2paymentsPaymentInformationTokenizedCard'), require('./model/Ptsv2paymentsPointOfSaleInformation'), require('./model/Ptsv2paymentsPointOfSaleInformationEmv'), require('./model/Ptsv2paymentsProcessingInformation'), require('./model/Ptsv2paymentsProcessingInformationAuthorizationOptions'), require('./model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator'), require('./model/Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction'), require('./model/Ptsv2paymentsProcessingInformationBankTransferOptions'), require('./model/Ptsv2paymentsProcessingInformationCaptureOptions'), require('./model/Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer'), require('./model/Ptsv2paymentsProcessingInformationJapanPaymentOptions'), require('./model/Ptsv2paymentsProcessingInformationLoanOptions'), require('./model/Ptsv2paymentsProcessingInformationPurchaseOptions'), require('./model/Ptsv2paymentsProcessingInformationRecurringOptions'), require('./model/Ptsv2paymentsProcessorInformation'), require('./model/Ptsv2paymentsProcessorInformationAuthorizationOptions'), require('./model/Ptsv2paymentsPromotionInformation'), require('./model/Ptsv2paymentsRecipientInformation'), require('./model/Ptsv2paymentsRecurringPaymentInformation'), require('./model/Ptsv2paymentsRiskInformation'), require('./model/Ptsv2paymentsRiskInformationAuxiliaryData'), require('./model/Ptsv2paymentsRiskInformationBuyerHistory'), require('./model/Ptsv2paymentsRiskInformationBuyerHistoryAccountHistory'), require('./model/Ptsv2paymentsRiskInformationBuyerHistoryCustomerAccount'), require('./model/Ptsv2paymentsRiskInformationProfile'), require('./model/Ptsv2paymentsTokenInformation'), require('./model/Ptsv2paymentsTokenInformationPaymentInstrument'), require('./model/Ptsv2paymentsTokenInformationShippingAddress'), require('./model/Ptsv2paymentsTravelInformation'), require('./model/Ptsv2paymentsTravelInformationAgency'), require('./model/Ptsv2paymentsTravelInformationAutoRental'), require('./model/Ptsv2paymentsTravelInformationAutoRentalRentalAddress'), require('./model/Ptsv2paymentsTravelInformationAutoRentalReturnAddress'), require('./model/Ptsv2paymentsTravelInformationAutoRentalTaxDetails'), require('./model/Ptsv2paymentsTravelInformationLodging'), require('./model/Ptsv2paymentsTravelInformationLodgingRoom'), require('./model/Ptsv2paymentsTravelInformationTransit'), require('./model/Ptsv2paymentsTravelInformationTransitAirline'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformation'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformationService'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineLegs'), require('./model/Ptsv2paymentsTravelInformationTransitAirlineTicketIssuer'), require('./model/Ptsv2paymentsidClientReferenceInformation'), require('./model/Ptsv2paymentsidClientReferenceInformationPartner'), require('./model/Ptsv2paymentsidMerchantInformation'), require('./model/Ptsv2paymentsidOrderInformation'), require('./model/Ptsv2paymentsidOrderInformationAmountDetails'), require('./model/Ptsv2paymentsidProcessingInformation'), require('./model/Ptsv2paymentsidProcessingInformationAuthorizationOptions'), require('./model/Ptsv2paymentsidProcessingInformationAuthorizationOptionsInitiator'), require('./model/Ptsv2paymentsidTravelInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformation'), require('./model/Ptsv2paymentsidcapturesAggregatorInformationSubMerchant'), require('./model/Ptsv2paymentsidcapturesBuyerInformation'), require('./model/Ptsv2paymentsidcapturesDeviceInformation'), require('./model/Ptsv2paymentsidcapturesInstallmentInformation'), require('./model/Ptsv2paymentsidcapturesMerchantInformation'), require('./model/Ptsv2paymentsidcapturesOrderInformation'), require('./model/Ptsv2paymentsidcapturesOrderInformationAmountDetails'), require('./model/Ptsv2paymentsidcapturesOrderInformationBillTo'), require('./model/Ptsv2paymentsidcapturesOrderInformationInvoiceDetails'), require('./model/Ptsv2paymentsidcapturesOrderInformationShipTo'), require('./model/Ptsv2paymentsidcapturesOrderInformationShippingDetails'), require('./model/Ptsv2paymentsidcapturesPaymentInformation'), require('./model/Ptsv2paymentsidcapturesPaymentInformationCard'), require('./model/Ptsv2paymentsidcapturesPointOfSaleInformation'), require('./model/Ptsv2paymentsidcapturesPointOfSaleInformationEmv'), require('./model/Ptsv2paymentsidcapturesProcessingInformation'), require('./model/Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions'), require('./model/Ptsv2paymentsidcapturesProcessingInformationCaptureOptions'), require('./model/Ptsv2paymentsidrefundsMerchantInformation'), require('./model/Ptsv2paymentsidrefundsOrderInformation'), require('./model/Ptsv2paymentsidrefundsOrderInformationLineItems'), require('./model/Ptsv2paymentsidrefundsPaymentInformation'), require('./model/Ptsv2paymentsidrefundsPaymentInformationBank'), require('./model/Ptsv2paymentsidrefundsPaymentInformationCard'), require('./model/Ptsv2paymentsidrefundsPointOfSaleInformation'), require('./model/Ptsv2paymentsidrefundsProcessingInformation'), require('./model/Ptsv2paymentsidrefundsProcessingInformationRecurringOptions'), require('./model/Ptsv2paymentsidreversalsClientReferenceInformation'), require('./model/Ptsv2paymentsidreversalsClientReferenceInformationPartner'), require('./model/Ptsv2paymentsidreversalsOrderInformation'), require('./model/Ptsv2paymentsidreversalsOrderInformationAmountDetails'), require('./model/Ptsv2paymentsidreversalsOrderInformationLineItems'), require('./model/Ptsv2paymentsidreversalsPointOfSaleInformation'), require('./model/Ptsv2paymentsidreversalsPointOfSaleInformationEmv'), require('./model/Ptsv2paymentsidreversalsProcessingInformation'), require('./model/Ptsv2paymentsidreversalsReversalInformation'), require('./model/Ptsv2paymentsidreversalsReversalInformationAmountDetails'), require('./model/Ptsv2paymentsidvoidsOrderInformation'), require('./model/Ptsv2paymentsidvoidsPaymentInformation'), require('./model/Ptsv2payoutsClientReferenceInformation'), require('./model/Ptsv2payoutsMerchantInformation'), require('./model/Ptsv2payoutsMerchantInformationMerchantDescriptor'), require('./model/Ptsv2payoutsOrderInformation'), require('./model/Ptsv2payoutsOrderInformationAmountDetails'), require('./model/Ptsv2payoutsOrderInformationAmountDetailsSurcharge'), require('./model/Ptsv2payoutsOrderInformationBillTo'), require('./model/Ptsv2payoutsPaymentInformation'), require('./model/Ptsv2payoutsPaymentInformationCard'), require('./model/Ptsv2payoutsProcessingInformation'), require('./model/Ptsv2payoutsProcessingInformationFundingOptions'), require('./model/Ptsv2payoutsProcessingInformationFundingOptionsInitiator'), require('./model/Ptsv2payoutsProcessingInformationPayoutsOptions'), require('./model/Ptsv2payoutsRecipientInformation'), require('./model/Ptsv2payoutsSenderInformation'), require('./model/Ptsv2payoutsSenderInformationAccount'), require('./model/Ptsv2voidsProcessingInformation'), require('./model/RefundCaptureRequest'), require('./model/RefundPaymentRequest'), require('./model/ReportingV3ChargebackDetailsGet200Response'), require('./model/ReportingV3ChargebackDetailsGet200ResponseChargebackDetails'), require('./model/ReportingV3ChargebackSummariesGet200Response'), require('./model/ReportingV3ChargebackSummariesGet200ResponseChargebackSummaries'), require('./model/ReportingV3ConversionDetailsGet200Response'), require('./model/ReportingV3ConversionDetailsGet200ResponseConversionDetails'), require('./model/ReportingV3ConversionDetailsGet200ResponseNotes'), require('./model/ReportingV3InterchangeClearingLevelDetailsGet200Response'), require('./model/ReportingV3InterchangeClearingLevelDetailsGet200ResponseInterchangeClearingLevelDetails'), require('./model/ReportingV3NetFundingsGet200Response'), require('./model/ReportingV3NetFundingsGet200ResponseNetFundingSummaries'), require('./model/ReportingV3NetFundingsGet200ResponseTotalPurchases'), require('./model/ReportingV3NotificationofChangesGet200Response'), require('./model/ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges'), require('./model/ReportingV3PaymentBatchSummariesGet200Response'), require('./model/ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries'), require('./model/ReportingV3PurchaseRefundDetailsGet200Response'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseOthers'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses'), require('./model/ReportingV3PurchaseRefundDetailsGet200ResponseSettlements'), require('./model/ReportingV3ReportDefinitionsGet200Response'), require('./model/ReportingV3ReportDefinitionsGet200ResponseReportDefinitions'), require('./model/ReportingV3ReportDefinitionsNameGet200Response'), require('./model/ReportingV3ReportDefinitionsNameGet200ResponseAttributes'), require('./model/ReportingV3ReportDefinitionsNameGet200ResponseDefaultSettings'), require('./model/ReportingV3ReportSubscriptionsGet200Response'), require('./model/ReportingV3ReportSubscriptionsGet200ResponseSubscriptions'), require('./model/ReportingV3ReportsGet200Response'), require('./model/ReportingV3ReportsGet200ResponseLink'), require('./model/ReportingV3ReportsGet200ResponseLinkReportDownload'), require('./model/ReportingV3ReportsGet200ResponseReportSearchResults'), require('./model/ReportingV3ReportsIdGet200Response'), require('./model/ReportingV3RetrievalDetailsGet200Response'), require('./model/ReportingV3RetrievalDetailsGet200ResponseRetrievalDetails'), require('./model/ReportingV3RetrievalSummariesGet200Response'), require('./model/Reportingv3ReportDownloadsGet400Response'), require('./model/Reportingv3ReportDownloadsGet400ResponseDetails'), require('./model/Reportingv3reportsReportFilters'), require('./model/Reportingv3reportsReportPreferences'), require('./model/RiskV1AddressVerificationsPost201Response'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress'), require('./model/RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddressAddress1'), require('./model/RiskV1AddressVerificationsPost201ResponseErrorInformation'), require('./model/RiskV1AuthenticationResultsPost201Response'), require('./model/RiskV1AuthenticationResultsPost201ResponseConsumerAuthenticationInformation'), require('./model/RiskV1AuthenticationSetupsPost201Response'), require('./model/RiskV1AuthenticationSetupsPost201ResponseConsumerAuthenticationInformation'), require('./model/RiskV1AuthenticationSetupsPost201ResponseErrorInformation'), require('./model/RiskV1AuthenticationsPost201Response'), require('./model/RiskV1AuthenticationsPost201ResponseErrorInformation'), require('./model/RiskV1AuthenticationsPost400Response'), require('./model/RiskV1AuthenticationsPost400Response1'), require('./model/RiskV1DecisionsPost201Response'), require('./model/RiskV1DecisionsPost201ResponseClientReferenceInformation'), require('./model/RiskV1DecisionsPost201ResponseConsumerAuthenticationInformation'), require('./model/RiskV1DecisionsPost201ResponseErrorInformation'), require('./model/RiskV1DecisionsPost201ResponseOrderInformation'), require('./model/RiskV1DecisionsPost201ResponseOrderInformationAmountDetails'), require('./model/RiskV1DecisionsPost201ResponsePaymentInformation'), require('./model/RiskV1DecisionsPost400Response'), require('./model/RiskV1DecisionsPost400Response1'), require('./model/RiskV1ExportComplianceInquiriesPost201Response'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseErrorInformation'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformation'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchList'), require('./model/RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchListMatches'), require('./model/RiskV1UpdatePost201Response'), require('./model/Riskv1addressverificationsBuyerInformation'), require('./model/Riskv1addressverificationsOrderInformation'), require('./model/Riskv1addressverificationsOrderInformationBillTo'), require('./model/Riskv1addressverificationsOrderInformationLineItems'), require('./model/Riskv1addressverificationsOrderInformationShipTo'), require('./model/Riskv1authenticationresultsConsumerAuthenticationInformation'), require('./model/Riskv1authenticationresultsDeviceInformation'), require('./model/Riskv1authenticationresultsOrderInformation'), require('./model/Riskv1authenticationresultsOrderInformationAmountDetails'), require('./model/Riskv1authenticationresultsOrderInformationLineItems'), require('./model/Riskv1authenticationresultsPaymentInformation'), require('./model/Riskv1authenticationresultsPaymentInformationCard'), require('./model/Riskv1authenticationresultsPaymentInformationFluidData'), require('./model/Riskv1authenticationresultsPaymentInformationTokenizedCard'), require('./model/Riskv1authenticationsBuyerInformation'), require('./model/Riskv1authenticationsDeviceInformation'), require('./model/Riskv1authenticationsOrderInformation'), require('./model/Riskv1authenticationsOrderInformationAmountDetails'), require('./model/Riskv1authenticationsOrderInformationBillTo'), require('./model/Riskv1authenticationsOrderInformationLineItems'), require('./model/Riskv1authenticationsPaymentInformation'), require('./model/Riskv1authenticationsPaymentInformationCard'), require('./model/Riskv1authenticationsPaymentInformationTokenizedCard'), require('./model/Riskv1authenticationsRiskInformation'), require('./model/Riskv1authenticationsTravelInformation'), require('./model/Riskv1authenticationsetupsPaymentInformation'), require('./model/Riskv1authenticationsetupsPaymentInformationCard'), require('./model/Riskv1authenticationsetupsPaymentInformationCustomer'), require('./model/Riskv1authenticationsetupsPaymentInformationFluidData'), require('./model/Riskv1authenticationsetupsPaymentInformationTokenizedCard'), require('./model/Riskv1authenticationsetupsProcessingInformation'), require('./model/Riskv1authenticationsetupsTokenInformation'), require('./model/Riskv1decisionsBuyerInformation'), require('./model/Riskv1decisionsClientReferenceInformation'), require('./model/Riskv1decisionsClientReferenceInformationPartner'), require('./model/Riskv1decisionsConsumerAuthenticationInformation'), require('./model/Riskv1decisionsConsumerAuthenticationInformationStrongAuthentication'), require('./model/Riskv1decisionsDeviceInformation'), require('./model/Riskv1decisionsMerchantDefinedInformation'), require('./model/Riskv1decisionsMerchantInformation'), require('./model/Riskv1decisionsMerchantInformationMerchantDescriptor'), require('./model/Riskv1decisionsOrderInformation'), require('./model/Riskv1decisionsOrderInformationAmountDetails'), require('./model/Riskv1decisionsOrderInformationBillTo'), require('./model/Riskv1decisionsOrderInformationLineItems'), require('./model/Riskv1decisionsOrderInformationShipTo'), require('./model/Riskv1decisionsOrderInformationShippingDetails'), require('./model/Riskv1decisionsPaymentInformation'), require('./model/Riskv1decisionsPaymentInformationCard'), require('./model/Riskv1decisionsPaymentInformationTokenizedCard'), require('./model/Riskv1decisionsProcessingInformation'), require('./model/Riskv1decisionsProcessorInformation'), require('./model/Riskv1decisionsProcessorInformationAvs'), require('./model/Riskv1decisionsProcessorInformationCardVerification'), require('./model/Riskv1decisionsRiskInformation'), require('./model/Riskv1decisionsTravelInformation'), require('./model/Riskv1decisionsTravelInformationLegs'), require('./model/Riskv1decisionsTravelInformationPassengers'), require('./model/Riskv1decisionsidmarkingRiskInformation'), require('./model/Riskv1decisionsidmarkingRiskInformationMarkingDetails'), require('./model/Riskv1exportcomplianceinquiriesDeviceInformation'), require('./model/Riskv1exportcomplianceinquiriesExportComplianceInformation'), require('./model/Riskv1exportcomplianceinquiriesExportComplianceInformationWeights'), require('./model/Riskv1exportcomplianceinquiriesOrderInformation'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationBillTo'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationBillToCompany'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationLineItems'), require('./model/Riskv1exportcomplianceinquiriesOrderInformationShipTo'), require('./model/Riskv1liststypeentriesBuyerInformation'), require('./model/Riskv1liststypeentriesClientReferenceInformation'), require('./model/Riskv1liststypeentriesDeviceInformation'), require('./model/Riskv1liststypeentriesOrderInformation'), require('./model/Riskv1liststypeentriesOrderInformationAddress'), require('./model/Riskv1liststypeentriesOrderInformationBillTo'), require('./model/Riskv1liststypeentriesOrderInformationLineItems'), require('./model/Riskv1liststypeentriesOrderInformationShipTo'), require('./model/Riskv1liststypeentriesPaymentInformation'), require('./model/Riskv1liststypeentriesPaymentInformationBank'), require('./model/Riskv1liststypeentriesPaymentInformationCard'), require('./model/Riskv1liststypeentriesRiskInformation'), require('./model/Riskv1liststypeentriesRiskInformationMarkingDetails'), require('./model/SearchRequest'), require('./model/ShippingAddressListForCustomer'), require('./model/ShippingAddressListForCustomerEmbedded'), require('./model/ShippingAddressListForCustomerLinks'), require('./model/ShippingAddressListForCustomerLinksFirst'), require('./model/ShippingAddressListForCustomerLinksLast'), require('./model/ShippingAddressListForCustomerLinksNext'), require('./model/ShippingAddressListForCustomerLinksPrev'), require('./model/ShippingAddressListForCustomerLinksSelf'), require('./model/TaxRequest'), require('./model/TmsV2CustomersResponse'), require('./model/Tmsv2customersBuyerInformation'), require('./model/Tmsv2customersClientReferenceInformation'), require('./model/Tmsv2customersDefaultPaymentInstrument'), require('./model/Tmsv2customersDefaultShippingAddress'), require('./model/Tmsv2customersEmbedded'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrument'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBankAccount'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBillTo'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationIssuedBy'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationPersonalIdentification'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentCardTokenizedInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbedded'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBillTo'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierIssuer'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinks'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksPaymentInstruments'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksSelf'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierMetadata'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptions'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiator'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCardCard'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentInstrumentIdentifier'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinks'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentLinksSelf'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformationMerchantDescriptor'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentMetadata'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformation'), require('./model/Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformationBankTransferOptions'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddress'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressLinks'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressLinksCustomer'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressLinksSelf'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressMetadata'), require('./model/Tmsv2customersEmbeddedDefaultShippingAddressShipTo'), require('./model/Tmsv2customersLinks'), require('./model/Tmsv2customersLinksPaymentInstruments'), require('./model/Tmsv2customersLinksSelf'), require('./model/Tmsv2customersLinksShippingAddress'), require('./model/Tmsv2customersMerchantDefinedInformation'), require('./model/Tmsv2customersMetadata'), require('./model/Tmsv2customersObjectInformation'), require('./model/TokenizeRequest'), require('./model/TssV2TransactionsGet200Response'), require('./model/TssV2TransactionsGet200ResponseApplicationInformation'), require('./model/TssV2TransactionsGet200ResponseApplicationInformationApplications'), require('./model/TssV2TransactionsGet200ResponseBuyerInformation'), require('./model/TssV2TransactionsGet200ResponseClientReferenceInformation'), require('./model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner'), require('./model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformation'), require('./model/TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication'), require('./model/TssV2TransactionsGet200ResponseDeviceInformation'), require('./model/TssV2TransactionsGet200ResponseErrorInformation'), require('./model/TssV2TransactionsGet200ResponseFraudMarkingInformation'), require('./model/TssV2TransactionsGet200ResponseInstallmentInformation'), require('./model/TssV2TransactionsGet200ResponseLinks'), require('./model/TssV2TransactionsGet200ResponseMerchantInformation'), require('./model/TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor'), require('./model/TssV2TransactionsGet200ResponseOrderInformation'), require('./model/TssV2TransactionsGet200ResponseOrderInformationAmountDetails'), require('./model/TssV2TransactionsGet200ResponseOrderInformationBillTo'), require('./model/TssV2TransactionsGet200ResponseOrderInformationInvoiceDetails'), require('./model/TssV2TransactionsGet200ResponseOrderInformationLineItems'), require('./model/TssV2TransactionsGet200ResponseOrderInformationShipTo'), require('./model/TssV2TransactionsGet200ResponseOrderInformationShippingDetails'), require('./model/TssV2TransactionsGet200ResponsePaymentInformation'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationBank'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationBankAccount'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationBankMandate'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationCard'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationCustomer'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationFluidData'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationInvoice'), require('./model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType'), require('./model/TssV2TransactionsGet200ResponsePointOfSaleInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformation'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptionsInitiator'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions'), require('./model/TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions'), require('./model/TssV2TransactionsGet200ResponseProcessorInformation'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationMultiProcessorRouting'), require('./model/TssV2TransactionsGet200ResponseProcessorInformationProcessor'), require('./model/TssV2TransactionsGet200ResponseRiskInformation'), require('./model/TssV2TransactionsGet200ResponseRiskInformationProfile'), require('./model/TssV2TransactionsGet200ResponseRiskInformationRules'), require('./model/TssV2TransactionsGet200ResponseRiskInformationScore'), require('./model/TssV2TransactionsGet200ResponseSenderInformation'), require('./model/TssV2TransactionsGet200ResponseTokenInformation'), require('./model/TssV2TransactionsPost201Response'), require('./model/TssV2TransactionsPost201ResponseEmbedded'), require('./model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedApplicationInformationApplications'), require('./model/TssV2TransactionsPost201ResponseEmbeddedBuyerInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner'), require('./model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedLinks'), require('./model/TssV2TransactionsPost201ResponseEmbeddedMerchantInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBank'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBankAccount'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCustomer'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner'), require('./model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedProcessorInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedRiskInformation'), require('./model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders'), require('./model/TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint'), require('./model/TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries'), require('./model/TssV2TransactionsPost400Response'), require('./model/UmsV1UsersGet200Response'), require('./model/UmsV1UsersGet200ResponseAccountInformation'), require('./model/UmsV1UsersGet200ResponseContactInformation'), require('./model/UmsV1UsersGet200ResponseOrganizationInformation'), require('./model/UmsV1UsersGet200ResponseUsers'), require('./model/UpdateInvoiceRequest'), require('./model/V1FileDetailsGet200Response'), require('./model/V1FileDetailsGet200ResponseFileDetails'), require('./model/V1FileDetailsGet200ResponseLinks'), require('./model/V1FileDetailsGet200ResponseLinksFiles'), require('./model/V1FileDetailsGet200ResponseLinksSelf'), require('./model/ValidateExportComplianceRequest'), require('./model/ValidateRequest'), require('./model/VasV2PaymentsPost201Response'), require('./model/VasV2PaymentsPost201ResponseLinks'), require('./model/VasV2PaymentsPost201ResponseOrderInformation'), require('./model/VasV2PaymentsPost201ResponseOrderInformationJurisdiction'), require('./model/VasV2PaymentsPost201ResponseOrderInformationLineItems'), require('./model/VasV2PaymentsPost201ResponseOrderInformationTaxDetails'), require('./model/VasV2PaymentsPost201ResponseTaxInformation'), require('./model/VasV2PaymentsPost400Response'), require('./model/VasV2TaxVoid200Response'), require('./model/VasV2TaxVoid200ResponseVoidAmountDetails'), require('./model/VasV2TaxVoidsPost400Response'), require('./model/Vasv2taxBuyerInformation'), require('./model/Vasv2taxClientReferenceInformation'), require('./model/Vasv2taxMerchantInformation'), require('./model/Vasv2taxOrderInformation'), require('./model/Vasv2taxOrderInformationBillTo'), require('./model/Vasv2taxOrderInformationInvoiceDetails'), require('./model/Vasv2taxOrderInformationLineItems'), require('./model/Vasv2taxOrderInformationOrderAcceptance'), require('./model/Vasv2taxOrderInformationOrderOrigin'), require('./model/Vasv2taxOrderInformationShipTo'), require('./model/Vasv2taxOrderInformationShippingDetails'), require('./model/Vasv2taxTaxInformation'), require('./model/Vasv2taxidClientReferenceInformation'), require('./model/Vasv2taxidClientReferenceInformationPartner'), require('./model/VerifyCustomerAddressRequest'), require('./model/VoidCaptureRequest'), require('./model/VoidCreditRequest'), require('./model/VoidPaymentRequest'), require('./model/VoidRefundRequest'), require('./model/VoidTaxRequest'), require('./model/AccessTokenResponse'), require('./model/BadRequestError'), require('./model/CreateAccessTokenRequest'), require('./model/ResourceNotFoundError'), require('./model/UnauthorizedClientError'), require('./api/AsymmetricKeyManagementApi'), require('./api/CaptureApi'), require('./api/ChargebackDetailsApi'), require('./api/ChargebackSummariesApi'), require('./api/ConversionDetailsApi'), require('./api/CreditApi'), require('./api/CustomerApi'), require('./api/CustomerPaymentInstrumentApi'), require('./api/CustomerShippingAddressApi'), require('./api/DecisionManagerApi'), require('./api/DownloadDTDApi'), require('./api/DownloadXSDApi'), require('./api/InstrumentIdentifierApi'), require('./api/InterchangeClearingLevelDetailsApi'), require('./api/InvoiceSettingsApi'), require('./api/InvoicesApi'), require('./api/KeyGenerationApi'), require('./api/NetFundingsApi'), require('./api/NotificationOfChangesApi'), require('./api/PayerAuthenticationApi'), require('./api/PaymentBatchSummariesApi'), require('./api/PaymentInstrumentApi'), require('./api/PaymentsApi'), require('./api/PayoutsApi'), require('./api/PurchaseAndRefundDetailsApi'), require('./api/RefundApi'), require('./api/ReportDefinitionsApi'), require('./api/ReportDownloadsApi'), require('./api/ReportSubscriptionsApi'), require('./api/ReportsApi'), require('./api/RetrievalDetailsApi'), require('./api/RetrievalSummariesApi'), require('./api/ReversalApi'), require('./api/SearchTransactionsApi'), require('./api/SecureFileShareApi'), require('./api/SymmetricKeyManagementApi'), require('./api/TaxesApi'), require('./api/TokenizationApi'), require('./api/TransactionBatchesApi'), require('./api/TransactionDetailsApi'), require('./api/UserManagementApi'), require('./api/UserManagementSearchApi'), require('./api/VerificationApi'), require('./api/VoidApi'), require('./api/OAuthApi')); } -}(function(ApiClient, AddNegativeListRequest, AuthReversalRequest, CapturePaymentRequest, CheckPayerAuthEnrollmentRequest, CreateAdhocReportRequest, CreateBundledDecisionManagerCaseRequest, CreateCreditRequest, CreateInvoiceRequest, CreateP12KeysRequest, CreatePaymentRequest, CreateReportSubscriptionRequest, CreateSearchRequest, CreateSharedSecretKeysRequest, CreateSharedSecretKeysVerifiRequest, DeleteBulkP12KeysRequest, DeleteBulkSymmetricKeysRequest, FlexV1KeysPost200Response, FlexV1KeysPost200ResponseDer, FlexV1KeysPost200ResponseJwk, FlexV1TokensPost200Response, Flexv1tokensCardInfo, FraudMarkingActionRequest, GeneratePublicKeyRequest, IncrementAuthRequest, InlineResponse400, InlineResponse4001, InlineResponse4001Fields, InlineResponse4002, InlineResponse400Details, InlineResponse400Errors, InlineResponseDefault, InlineResponseDefaultLinks, InlineResponseDefaultLinksNext, InlineResponseDefaultResponseStatus, InlineResponseDefaultResponseStatusDetails, InvoiceSettingsRequest, InvoicingV2InvoiceSettingsGet200Response, InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformation, InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformationHeaderStyle, InvoicingV2InvoicesAllGet200Response, InvoicingV2InvoicesAllGet200ResponseCustomerInformation, InvoicingV2InvoicesAllGet200ResponseInvoiceInformation, InvoicingV2InvoicesAllGet200ResponseInvoices, InvoicingV2InvoicesAllGet200ResponseLinks, InvoicingV2InvoicesAllGet200ResponseLinks1, InvoicingV2InvoicesAllGet200ResponseOrderInformation, InvoicingV2InvoicesAllGet200ResponseOrderInformationAmountDetails, InvoicingV2InvoicesAllGet400Response, InvoicingV2InvoicesAllGet404Response, InvoicingV2InvoicesAllGet502Response, InvoicingV2InvoicesGet200Response, InvoicingV2InvoicesGet200ResponseInvoiceHistory, InvoicingV2InvoicesGet200ResponseTransactionDetails, InvoicingV2InvoicesPost201Response, InvoicingV2InvoicesPost201ResponseInvoiceInformation, InvoicingV2InvoicesPost201ResponseOrderInformation, InvoicingV2InvoicesPost201ResponseOrderInformationAmountDetails, InvoicingV2InvoicesPost202Response, Invoicingv2invoiceSettingsInvoiceSettingsInformation, Invoicingv2invoicesCustomerInformation, Invoicingv2invoicesInvoiceInformation, Invoicingv2invoicesOrderInformation, Invoicingv2invoicesOrderInformationAmountDetails, Invoicingv2invoicesOrderInformationAmountDetailsFreight, Invoicingv2invoicesOrderInformationAmountDetailsTaxDetails, Invoicingv2invoicesOrderInformationLineItems, Invoicingv2invoicesidInvoiceInformation, KmsV2KeysAsymDeletesPost200Response, KmsV2KeysAsymDeletesPost200ResponseKeyInformation, KmsV2KeysAsymGet200Response, KmsV2KeysAsymGet200ResponseKeyInformation, KmsV2KeysAsymPost201Response, KmsV2KeysAsymPost201ResponseCertificateInformation, KmsV2KeysAsymPost201ResponseKeyInformation, KmsV2KeysSymDeletesPost200Response, KmsV2KeysSymDeletesPost200ResponseKeyInformation, KmsV2KeysSymGet200Response, KmsV2KeysSymGet200ResponseKeyInformation, KmsV2KeysSymPost201Response, KmsV2KeysSymPost201ResponseErrorInformation, KmsV2KeysSymPost201ResponseKeyInformation, Kmsv2keysasymKeyInformation, Kmsv2keyssymClientReferenceInformation, Kmsv2keyssymKeyInformation, Kmsv2keyssymdeletesKeyInformation, Kmsv2keyssymverifiKeyInformation, MitReversalRequest, MitVoidRequest, OctCreatePaymentRequest, PatchCustomerPaymentInstrumentRequest, PatchCustomerRequest, PatchCustomerShippingAddressRequest, PatchInstrumentIdentifierRequest, PatchPaymentInstrumentRequest, PayerAuthSetupRequest, PaymentInstrumentList, PaymentInstrumentListEmbedded, PaymentInstrumentListLinks, PaymentInstrumentListLinksFirst, PaymentInstrumentListLinksLast, PaymentInstrumentListLinksNext, PaymentInstrumentListLinksPrev, PaymentInstrumentListLinksSelf, PostCustomerPaymentInstrumentRequest, PostCustomerRequest, PostCustomerShippingAddressRequest, PostInstrumentIdentifierEnrollmentRequest, PostInstrumentIdentifierRequest, PostPaymentInstrumentRequest, PredefinedSubscriptionRequestBean, PtsV1TransactionBatchesGet200Response, PtsV1TransactionBatchesGet200ResponseLinks, PtsV1TransactionBatchesGet200ResponseLinksSelf, PtsV1TransactionBatchesGet200ResponseTransactionBatches, PtsV1TransactionBatchesGet400Response, PtsV1TransactionBatchesGet400ResponseErrorInformation, PtsV1TransactionBatchesGet400ResponseErrorInformationDetails, PtsV1TransactionBatchesGet500Response, PtsV1TransactionBatchesGet500ResponseErrorInformation, PtsV1TransactionBatchesIdGet200Response, PtsV1TransactionBatchesIdGet200ResponseLinks, PtsV1TransactionBatchesIdGet200ResponseLinksTransactions, PtsV2CreditsPost201Response, PtsV2CreditsPost201ResponseCreditAmountDetails, PtsV2CreditsPost201ResponsePaymentInformation, PtsV2CreditsPost201ResponseProcessingInformation, PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions, PtsV2IncrementalAuthorizationPatch201Response, PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation, PtsV2IncrementalAuthorizationPatch201ResponseErrorInformation, PtsV2IncrementalAuthorizationPatch201ResponseLinks, PtsV2IncrementalAuthorizationPatch201ResponseOrderInformation, PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformation, PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformationAccountFeatures, PtsV2IncrementalAuthorizationPatch201ResponseProcessorInformation, PtsV2IncrementalAuthorizationPatch400Response, PtsV2PaymentsCapturesPost201Response, PtsV2PaymentsCapturesPost201ResponseLinks, PtsV2PaymentsCapturesPost201ResponseOrderInformation, PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsCapturesPost201ResponseOrderInformationInvoiceDetails, PtsV2PaymentsCapturesPost201ResponsePointOfSaleInformation, PtsV2PaymentsCapturesPost201ResponseProcessingInformation, PtsV2PaymentsCapturesPost201ResponseProcessorInformation, PtsV2PaymentsCapturesPost400Response, PtsV2PaymentsPost201Response, PtsV2PaymentsPost201ResponseBuyerInformation, PtsV2PaymentsPost201ResponseClientReferenceInformation, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation, PtsV2PaymentsPost201ResponseErrorInformation, PtsV2PaymentsPost201ResponseErrorInformationDetails, PtsV2PaymentsPost201ResponseInstallmentInformation, PtsV2PaymentsPost201ResponseIssuerInformation, PtsV2PaymentsPost201ResponseLinks, PtsV2PaymentsPost201ResponseLinksSelf, PtsV2PaymentsPost201ResponseOrderInformation, PtsV2PaymentsPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails, PtsV2PaymentsPost201ResponseOrderInformationRewardPointsDetails, PtsV2PaymentsPost201ResponsePaymentAccountInformation, PtsV2PaymentsPost201ResponsePaymentAccountInformationCard, PtsV2PaymentsPost201ResponsePaymentInformation, PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures, PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances, PtsV2PaymentsPost201ResponsePaymentInformationBank, PtsV2PaymentsPost201ResponsePaymentInformationBankAccount, PtsV2PaymentsPost201ResponsePaymentInformationInstrumentIdentifier, PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard, PtsV2PaymentsPost201ResponsePaymentInsightsInformation, PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights, PtsV2PaymentsPost201ResponsePointOfSaleInformation, PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv, PtsV2PaymentsPost201ResponseProcessingInformation, PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions, PtsV2PaymentsPost201ResponseProcessorInformation, PtsV2PaymentsPost201ResponseProcessorInformationAchVerification, PtsV2PaymentsPost201ResponseProcessorInformationAvs, PtsV2PaymentsPost201ResponseProcessorInformationCardVerification, PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse, PtsV2PaymentsPost201ResponseProcessorInformationCustomer, PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults, PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice, PtsV2PaymentsPost201ResponseProcessorInformationRouting, PtsV2PaymentsPost201ResponseRiskInformation, PtsV2PaymentsPost201ResponseRiskInformationInfoCodes, PtsV2PaymentsPost201ResponseRiskInformationIpAddress, PtsV2PaymentsPost201ResponseRiskInformationProfile, PtsV2PaymentsPost201ResponseRiskInformationProviders, PtsV2PaymentsPost201ResponseRiskInformationProvidersProviderName, PtsV2PaymentsPost201ResponseRiskInformationRules, PtsV2PaymentsPost201ResponseRiskInformationScore, PtsV2PaymentsPost201ResponseRiskInformationTravel, PtsV2PaymentsPost201ResponseRiskInformationTravelActualFinalDestination, PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDeparture, PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDestination, PtsV2PaymentsPost201ResponseRiskInformationTravelLastDestination, PtsV2PaymentsPost201ResponseRiskInformationVelocity, PtsV2PaymentsPost201ResponseRiskInformationVelocityMorphing, PtsV2PaymentsPost201ResponseTokenInformation, PtsV2PaymentsPost201ResponseTokenInformationCustomer, PtsV2PaymentsPost201ResponseTokenInformationInstrumentIdentifier, PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument, PtsV2PaymentsPost201ResponseTokenInformationShippingAddress, PtsV2PaymentsPost400Response, PtsV2PaymentsPost502Response, PtsV2PaymentsRefundPost201Response, PtsV2PaymentsRefundPost201ResponseLinks, PtsV2PaymentsRefundPost201ResponseOrderInformation, PtsV2PaymentsRefundPost201ResponseProcessorInformation, PtsV2PaymentsRefundPost201ResponseRefundAmountDetails, PtsV2PaymentsRefundPost400Response, PtsV2PaymentsReversalsPost201Response, PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation, PtsV2PaymentsReversalsPost201ResponseIssuerInformation, PtsV2PaymentsReversalsPost201ResponseProcessorInformation, PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails, PtsV2PaymentsReversalsPost400Response, PtsV2PaymentsVoidsPost201Response, PtsV2PaymentsVoidsPost201ResponseProcessorInformation, PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails, PtsV2PaymentsVoidsPost400Response, PtsV2PayoutsPost201Response, PtsV2PayoutsPost201ResponseErrorInformation, PtsV2PayoutsPost201ResponseMerchantInformation, PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor, PtsV2PayoutsPost201ResponseOrderInformation, PtsV2PayoutsPost201ResponseOrderInformationAmountDetails, PtsV2PayoutsPost201ResponseProcessorInformation, PtsV2PayoutsPost201ResponseRecipientInformation, PtsV2PayoutsPost201ResponseRecipientInformationCard, PtsV2PayoutsPost400Response, Ptsv2creditsInstallmentInformation, Ptsv2creditsProcessingInformation, Ptsv2creditsProcessingInformationBankTransferOptions, Ptsv2creditsProcessingInformationElectronicBenefitsTransfer, Ptsv2creditsProcessingInformationJapanPaymentOptions, Ptsv2creditsProcessingInformationPurchaseOptions, Ptsv2paymentsAcquirerInformation, Ptsv2paymentsAggregatorInformation, Ptsv2paymentsAggregatorInformationSubMerchant, Ptsv2paymentsBuyerInformation, Ptsv2paymentsBuyerInformationPersonalIdentification, Ptsv2paymentsClientReferenceInformation, Ptsv2paymentsClientReferenceInformationPartner, Ptsv2paymentsConsumerAuthenticationInformation, Ptsv2paymentsConsumerAuthenticationInformationStrongAuthentication, Ptsv2paymentsDeviceInformation, Ptsv2paymentsDeviceInformationRawData, Ptsv2paymentsHealthCareInformation, Ptsv2paymentsHealthCareInformationAmountDetails, Ptsv2paymentsInstallmentInformation, Ptsv2paymentsInvoiceDetails, Ptsv2paymentsIssuerInformation, Ptsv2paymentsMerchantDefinedInformation, Ptsv2paymentsMerchantInformation, Ptsv2paymentsMerchantInformationMerchantDescriptor, Ptsv2paymentsMerchantInformationServiceFeeDescriptor, Ptsv2paymentsOrderInformation, Ptsv2paymentsOrderInformationAmountDetails, Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts, Ptsv2paymentsOrderInformationAmountDetailsCurrencyConversion, Ptsv2paymentsOrderInformationAmountDetailsSurcharge, Ptsv2paymentsOrderInformationAmountDetailsTaxDetails, Ptsv2paymentsOrderInformationBillTo, Ptsv2paymentsOrderInformationBillToCompany, Ptsv2paymentsOrderInformationInvoiceDetails, Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum, Ptsv2paymentsOrderInformationLineItems, Ptsv2paymentsOrderInformationPassenger, Ptsv2paymentsOrderInformationShipTo, Ptsv2paymentsOrderInformationShippingDetails, Ptsv2paymentsPaymentInformation, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationBankAccount, Ptsv2paymentsPaymentInformationCard, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationEWallet, Ptsv2paymentsPaymentInformationFluidData, Ptsv2paymentsPaymentInformationInstrumentIdentifier, Ptsv2paymentsPaymentInformationLegacyToken, Ptsv2paymentsPaymentInformationPaymentInstrument, Ptsv2paymentsPaymentInformationPaymentType, Ptsv2paymentsPaymentInformationPaymentTypeMethod, Ptsv2paymentsPaymentInformationShippingAddress, Ptsv2paymentsPaymentInformationTokenizedCard, Ptsv2paymentsPointOfSaleInformation, Ptsv2paymentsPointOfSaleInformationEmv, Ptsv2paymentsProcessingInformation, Ptsv2paymentsProcessingInformationAuthorizationOptions, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Ptsv2paymentsProcessingInformationBankTransferOptions, Ptsv2paymentsProcessingInformationCaptureOptions, Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer, Ptsv2paymentsProcessingInformationJapanPaymentOptions, Ptsv2paymentsProcessingInformationLoanOptions, Ptsv2paymentsProcessingInformationPurchaseOptions, Ptsv2paymentsProcessingInformationRecurringOptions, Ptsv2paymentsProcessorInformation, Ptsv2paymentsProcessorInformationAuthorizationOptions, Ptsv2paymentsPromotionInformation, Ptsv2paymentsRecipientInformation, Ptsv2paymentsRecurringPaymentInformation, Ptsv2paymentsRiskInformation, Ptsv2paymentsRiskInformationAuxiliaryData, Ptsv2paymentsRiskInformationBuyerHistory, Ptsv2paymentsRiskInformationBuyerHistoryAccountHistory, Ptsv2paymentsRiskInformationBuyerHistoryCustomerAccount, Ptsv2paymentsRiskInformationProfile, Ptsv2paymentsTokenInformation, Ptsv2paymentsTokenInformationPaymentInstrument, Ptsv2paymentsTokenInformationShippingAddress, Ptsv2paymentsTravelInformation, Ptsv2paymentsTravelInformationAgency, Ptsv2paymentsTravelInformationAutoRental, Ptsv2paymentsTravelInformationAutoRentalRentalAddress, Ptsv2paymentsTravelInformationAutoRentalReturnAddress, Ptsv2paymentsTravelInformationAutoRentalTaxDetails, Ptsv2paymentsTravelInformationLodging, Ptsv2paymentsTravelInformationLodgingRoom, Ptsv2paymentsTravelInformationTransit, Ptsv2paymentsTravelInformationTransitAirline, Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformation, Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformationService, Ptsv2paymentsTravelInformationTransitAirlineLegs, Ptsv2paymentsTravelInformationTransitAirlineTicketIssuer, Ptsv2paymentsidClientReferenceInformation, Ptsv2paymentsidClientReferenceInformationPartner, Ptsv2paymentsidMerchantInformation, Ptsv2paymentsidOrderInformation, Ptsv2paymentsidOrderInformationAmountDetails, Ptsv2paymentsidProcessingInformation, Ptsv2paymentsidProcessingInformationAuthorizationOptions, Ptsv2paymentsidProcessingInformationAuthorizationOptionsInitiator, Ptsv2paymentsidTravelInformation, Ptsv2paymentsidcapturesAggregatorInformation, Ptsv2paymentsidcapturesAggregatorInformationSubMerchant, Ptsv2paymentsidcapturesBuyerInformation, Ptsv2paymentsidcapturesDeviceInformation, Ptsv2paymentsidcapturesInstallmentInformation, Ptsv2paymentsidcapturesMerchantInformation, Ptsv2paymentsidcapturesOrderInformation, Ptsv2paymentsidcapturesOrderInformationAmountDetails, Ptsv2paymentsidcapturesOrderInformationBillTo, Ptsv2paymentsidcapturesOrderInformationInvoiceDetails, Ptsv2paymentsidcapturesOrderInformationShipTo, Ptsv2paymentsidcapturesOrderInformationShippingDetails, Ptsv2paymentsidcapturesPaymentInformation, Ptsv2paymentsidcapturesPaymentInformationCard, Ptsv2paymentsidcapturesPointOfSaleInformation, Ptsv2paymentsidcapturesPointOfSaleInformationEmv, Ptsv2paymentsidcapturesProcessingInformation, Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions, Ptsv2paymentsidcapturesProcessingInformationCaptureOptions, Ptsv2paymentsidrefundsMerchantInformation, Ptsv2paymentsidrefundsOrderInformation, Ptsv2paymentsidrefundsOrderInformationLineItems, Ptsv2paymentsidrefundsPaymentInformation, Ptsv2paymentsidrefundsPaymentInformationBank, Ptsv2paymentsidrefundsPaymentInformationCard, Ptsv2paymentsidrefundsPointOfSaleInformation, Ptsv2paymentsidrefundsProcessingInformation, Ptsv2paymentsidrefundsProcessingInformationRecurringOptions, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidreversalsClientReferenceInformationPartner, Ptsv2paymentsidreversalsOrderInformation, Ptsv2paymentsidreversalsOrderInformationAmountDetails, Ptsv2paymentsidreversalsOrderInformationLineItems, Ptsv2paymentsidreversalsPointOfSaleInformation, Ptsv2paymentsidreversalsPointOfSaleInformationEmv, Ptsv2paymentsidreversalsProcessingInformation, Ptsv2paymentsidreversalsReversalInformation, Ptsv2paymentsidreversalsReversalInformationAmountDetails, Ptsv2paymentsidvoidsOrderInformation, Ptsv2paymentsidvoidsPaymentInformation, Ptsv2payoutsClientReferenceInformation, Ptsv2payoutsMerchantInformation, Ptsv2payoutsMerchantInformationMerchantDescriptor, Ptsv2payoutsOrderInformation, Ptsv2payoutsOrderInformationAmountDetails, Ptsv2payoutsOrderInformationAmountDetailsSurcharge, Ptsv2payoutsOrderInformationBillTo, Ptsv2payoutsPaymentInformation, Ptsv2payoutsPaymentInformationCard, Ptsv2payoutsProcessingInformation, Ptsv2payoutsProcessingInformationFundingOptions, Ptsv2payoutsProcessingInformationFundingOptionsInitiator, Ptsv2payoutsProcessingInformationPayoutsOptions, Ptsv2payoutsRecipientInformation, Ptsv2payoutsSenderInformation, Ptsv2payoutsSenderInformationAccount, RefundCaptureRequest, RefundPaymentRequest, ReportingV3ChargebackDetailsGet200Response, ReportingV3ChargebackDetailsGet200ResponseChargebackDetails, ReportingV3ChargebackSummariesGet200Response, ReportingV3ChargebackSummariesGet200ResponseChargebackSummaries, ReportingV3ConversionDetailsGet200Response, ReportingV3ConversionDetailsGet200ResponseConversionDetails, ReportingV3ConversionDetailsGet200ResponseNotes, ReportingV3InterchangeClearingLevelDetailsGet200Response, ReportingV3InterchangeClearingLevelDetailsGet200ResponseInterchangeClearingLevelDetails, ReportingV3NetFundingsGet200Response, ReportingV3NetFundingsGet200ResponseNetFundingSummaries, ReportingV3NetFundingsGet200ResponseTotalPurchases, ReportingV3NotificationofChangesGet200Response, ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges, ReportingV3PaymentBatchSummariesGet200Response, ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries, ReportingV3PurchaseRefundDetailsGet200Response, ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations, ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails, ReportingV3PurchaseRefundDetailsGet200ResponseOthers, ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails, ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses, ReportingV3PurchaseRefundDetailsGet200ResponseSettlements, ReportingV3ReportDefinitionsGet200Response, ReportingV3ReportDefinitionsGet200ResponseReportDefinitions, ReportingV3ReportDefinitionsNameGet200Response, ReportingV3ReportDefinitionsNameGet200ResponseAttributes, ReportingV3ReportDefinitionsNameGet200ResponseDefaultSettings, ReportingV3ReportSubscriptionsGet200Response, ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, ReportingV3ReportsGet200Response, ReportingV3ReportsGet200ResponseLink, ReportingV3ReportsGet200ResponseLinkReportDownload, ReportingV3ReportsGet200ResponseReportSearchResults, ReportingV3ReportsIdGet200Response, ReportingV3RetrievalDetailsGet200Response, ReportingV3RetrievalDetailsGet200ResponseRetrievalDetails, ReportingV3RetrievalSummariesGet200Response, Reportingv3ReportDownloadsGet400Response, Reportingv3ReportDownloadsGet400ResponseDetails, Reportingv3reportsReportFilters, Reportingv3reportsReportPreferences, RiskV1AddressVerificationsPost201Response, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddressAddress1, RiskV1AddressVerificationsPost201ResponseErrorInformation, RiskV1AuthenticationResultsPost201Response, RiskV1AuthenticationResultsPost201ResponseConsumerAuthenticationInformation, RiskV1AuthenticationSetupsPost201Response, RiskV1AuthenticationSetupsPost201ResponseConsumerAuthenticationInformation, RiskV1AuthenticationSetupsPost201ResponseErrorInformation, RiskV1AuthenticationsPost201Response, RiskV1AuthenticationsPost201ResponseErrorInformation, RiskV1AuthenticationsPost400Response, RiskV1AuthenticationsPost400Response1, RiskV1DecisionsPost201Response, RiskV1DecisionsPost201ResponseClientReferenceInformation, RiskV1DecisionsPost201ResponseConsumerAuthenticationInformation, RiskV1DecisionsPost201ResponseErrorInformation, RiskV1DecisionsPost201ResponseOrderInformation, RiskV1DecisionsPost201ResponseOrderInformationAmountDetails, RiskV1DecisionsPost201ResponsePaymentInformation, RiskV1DecisionsPost400Response, RiskV1DecisionsPost400Response1, RiskV1ExportComplianceInquiriesPost201Response, RiskV1ExportComplianceInquiriesPost201ResponseErrorInformation, RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformation, RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchList, RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchListMatches, RiskV1UpdatePost201Response, Riskv1addressverificationsBuyerInformation, Riskv1addressverificationsOrderInformation, Riskv1addressverificationsOrderInformationBillTo, Riskv1addressverificationsOrderInformationLineItems, Riskv1addressverificationsOrderInformationShipTo, Riskv1authenticationresultsConsumerAuthenticationInformation, Riskv1authenticationresultsDeviceInformation, Riskv1authenticationresultsOrderInformation, Riskv1authenticationresultsOrderInformationAmountDetails, Riskv1authenticationresultsOrderInformationLineItems, Riskv1authenticationresultsPaymentInformation, Riskv1authenticationresultsPaymentInformationCard, Riskv1authenticationresultsPaymentInformationFluidData, Riskv1authenticationresultsPaymentInformationTokenizedCard, Riskv1authenticationsBuyerInformation, Riskv1authenticationsDeviceInformation, Riskv1authenticationsOrderInformation, Riskv1authenticationsOrderInformationAmountDetails, Riskv1authenticationsOrderInformationBillTo, Riskv1authenticationsOrderInformationLineItems, Riskv1authenticationsPaymentInformation, Riskv1authenticationsPaymentInformationCard, Riskv1authenticationsPaymentInformationTokenizedCard, Riskv1authenticationsRiskInformation, Riskv1authenticationsTravelInformation, Riskv1authenticationsetupsPaymentInformation, Riskv1authenticationsetupsPaymentInformationCard, Riskv1authenticationsetupsPaymentInformationCustomer, Riskv1authenticationsetupsPaymentInformationFluidData, Riskv1authenticationsetupsPaymentInformationTokenizedCard, Riskv1authenticationsetupsProcessingInformation, Riskv1authenticationsetupsTokenInformation, Riskv1decisionsBuyerInformation, Riskv1decisionsClientReferenceInformation, Riskv1decisionsClientReferenceInformationPartner, Riskv1decisionsConsumerAuthenticationInformation, Riskv1decisionsConsumerAuthenticationInformationStrongAuthentication, Riskv1decisionsDeviceInformation, Riskv1decisionsMerchantDefinedInformation, Riskv1decisionsMerchantInformation, Riskv1decisionsMerchantInformationMerchantDescriptor, Riskv1decisionsOrderInformation, Riskv1decisionsOrderInformationAmountDetails, Riskv1decisionsOrderInformationBillTo, Riskv1decisionsOrderInformationLineItems, Riskv1decisionsOrderInformationShipTo, Riskv1decisionsOrderInformationShippingDetails, Riskv1decisionsPaymentInformation, Riskv1decisionsPaymentInformationCard, Riskv1decisionsPaymentInformationTokenizedCard, Riskv1decisionsProcessingInformation, Riskv1decisionsProcessorInformation, Riskv1decisionsProcessorInformationAvs, Riskv1decisionsProcessorInformationCardVerification, Riskv1decisionsRiskInformation, Riskv1decisionsTravelInformation, Riskv1decisionsTravelInformationLegs, Riskv1decisionsTravelInformationPassengers, Riskv1decisionsidmarkingRiskInformation, Riskv1decisionsidmarkingRiskInformationMarkingDetails, Riskv1exportcomplianceinquiriesDeviceInformation, Riskv1exportcomplianceinquiriesExportComplianceInformation, Riskv1exportcomplianceinquiriesExportComplianceInformationWeights, Riskv1exportcomplianceinquiriesOrderInformation, Riskv1exportcomplianceinquiriesOrderInformationBillTo, Riskv1exportcomplianceinquiriesOrderInformationBillToCompany, Riskv1exportcomplianceinquiriesOrderInformationLineItems, Riskv1exportcomplianceinquiriesOrderInformationShipTo, Riskv1liststypeentriesBuyerInformation, Riskv1liststypeentriesClientReferenceInformation, Riskv1liststypeentriesDeviceInformation, Riskv1liststypeentriesOrderInformation, Riskv1liststypeentriesOrderInformationAddress, Riskv1liststypeentriesOrderInformationBillTo, Riskv1liststypeentriesOrderInformationLineItems, Riskv1liststypeentriesOrderInformationShipTo, Riskv1liststypeentriesPaymentInformation, Riskv1liststypeentriesPaymentInformationBank, Riskv1liststypeentriesPaymentInformationCard, Riskv1liststypeentriesRiskInformation, Riskv1liststypeentriesRiskInformationMarkingDetails, SearchRequest, ShippingAddressListForCustomer, ShippingAddressListForCustomerEmbedded, ShippingAddressListForCustomerLinks, ShippingAddressListForCustomerLinksFirst, ShippingAddressListForCustomerLinksLast, ShippingAddressListForCustomerLinksNext, ShippingAddressListForCustomerLinksPrev, ShippingAddressListForCustomerLinksSelf, TaxRequest, TmsV2CustomersResponse, Tmsv2customersBuyerInformation, Tmsv2customersClientReferenceInformation, Tmsv2customersDefaultPaymentInstrument, Tmsv2customersDefaultShippingAddress, Tmsv2customersEmbedded, Tmsv2customersEmbeddedDefaultPaymentInstrument, Tmsv2customersEmbeddedDefaultPaymentInstrumentBankAccount, Tmsv2customersEmbeddedDefaultPaymentInstrumentBillTo, Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationIssuedBy, Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationPersonalIdentification, Tmsv2customersEmbeddedDefaultPaymentInstrumentCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentCardTokenizedInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbedded, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBillTo, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierIssuer, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinks, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksPaymentInstruments, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksSelf, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierMetadata, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptions, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiator, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCardCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentInstrumentIdentifier, Tmsv2customersEmbeddedDefaultPaymentInstrumentLinks, Tmsv2customersEmbeddedDefaultPaymentInstrumentLinksSelf, Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformationMerchantDescriptor, Tmsv2customersEmbeddedDefaultPaymentInstrumentMetadata, Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformationBankTransferOptions, Tmsv2customersEmbeddedDefaultShippingAddress, Tmsv2customersEmbeddedDefaultShippingAddressLinks, Tmsv2customersEmbeddedDefaultShippingAddressLinksCustomer, Tmsv2customersEmbeddedDefaultShippingAddressLinksSelf, Tmsv2customersEmbeddedDefaultShippingAddressMetadata, Tmsv2customersEmbeddedDefaultShippingAddressShipTo, Tmsv2customersLinks, Tmsv2customersLinksPaymentInstruments, Tmsv2customersLinksSelf, Tmsv2customersLinksShippingAddress, Tmsv2customersMerchantDefinedInformation, Tmsv2customersMetadata, Tmsv2customersObjectInformation, TokenizeRequest, TssV2TransactionsGet200Response, TssV2TransactionsGet200ResponseApplicationInformation, TssV2TransactionsGet200ResponseApplicationInformationApplications, TssV2TransactionsGet200ResponseBuyerInformation, TssV2TransactionsGet200ResponseClientReferenceInformation, TssV2TransactionsGet200ResponseClientReferenceInformationPartner, TssV2TransactionsGet200ResponseConsumerAuthenticationInformation, TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication, TssV2TransactionsGet200ResponseDeviceInformation, TssV2TransactionsGet200ResponseErrorInformation, TssV2TransactionsGet200ResponseFraudMarkingInformation, TssV2TransactionsGet200ResponseInstallmentInformation, TssV2TransactionsGet200ResponseLinks, TssV2TransactionsGet200ResponseMerchantInformation, TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor, TssV2TransactionsGet200ResponseOrderInformation, TssV2TransactionsGet200ResponseOrderInformationAmountDetails, TssV2TransactionsGet200ResponseOrderInformationBillTo, TssV2TransactionsGet200ResponseOrderInformationInvoiceDetails, TssV2TransactionsGet200ResponseOrderInformationLineItems, TssV2TransactionsGet200ResponseOrderInformationShipTo, TssV2TransactionsGet200ResponseOrderInformationShippingDetails, TssV2TransactionsGet200ResponsePaymentInformation, TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, TssV2TransactionsGet200ResponsePaymentInformationBank, TssV2TransactionsGet200ResponsePaymentInformationBankAccount, TssV2TransactionsGet200ResponsePaymentInformationBankMandate, TssV2TransactionsGet200ResponsePaymentInformationCard, TssV2TransactionsGet200ResponsePaymentInformationCustomer, TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier, TssV2TransactionsGet200ResponsePaymentInformationInvoice, TssV2TransactionsGet200ResponsePaymentInformationPaymentType, TssV2TransactionsGet200ResponsePointOfSaleInformation, TssV2TransactionsGet200ResponseProcessingInformation, TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions, TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptionsInitiator, TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions, TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions, TssV2TransactionsGet200ResponseProcessorInformation, TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults, TssV2TransactionsGet200ResponseProcessorInformationMultiProcessorRouting, TssV2TransactionsGet200ResponseProcessorInformationProcessor, TssV2TransactionsGet200ResponseRiskInformation, TssV2TransactionsGet200ResponseRiskInformationProfile, TssV2TransactionsGet200ResponseRiskInformationRules, TssV2TransactionsGet200ResponseRiskInformationScore, TssV2TransactionsGet200ResponseSenderInformation, TssV2TransactionsGet200ResponseTokenInformation, TssV2TransactionsPost201Response, TssV2TransactionsPost201ResponseEmbedded, TssV2TransactionsPost201ResponseEmbeddedApplicationInformation, TssV2TransactionsPost201ResponseEmbeddedApplicationInformationApplications, TssV2TransactionsPost201ResponseEmbeddedBuyerInformation, TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation, TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation, TssV2TransactionsPost201ResponseEmbeddedLinks, TssV2TransactionsPost201ResponseEmbeddedMerchantInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo, TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo, TssV2TransactionsPost201ResponseEmbeddedPaymentInformation, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBank, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBankAccount, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCustomer, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner, TssV2TransactionsPost201ResponseEmbeddedProcessingInformation, TssV2TransactionsPost201ResponseEmbeddedProcessorInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint, TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries, TssV2TransactionsPost400Response, UmsV1UsersGet200Response, UmsV1UsersGet200ResponseAccountInformation, UmsV1UsersGet200ResponseContactInformation, UmsV1UsersGet200ResponseOrganizationInformation, UmsV1UsersGet200ResponseUsers, UpdateInvoiceRequest, V1FileDetailsGet200Response, V1FileDetailsGet200ResponseFileDetails, V1FileDetailsGet200ResponseLinks, V1FileDetailsGet200ResponseLinksFiles, V1FileDetailsGet200ResponseLinksSelf, ValidateExportComplianceRequest, ValidateRequest, VasV2PaymentsPost201Response, VasV2PaymentsPost201ResponseLinks, VasV2PaymentsPost201ResponseOrderInformation, VasV2PaymentsPost201ResponseOrderInformationJurisdiction, VasV2PaymentsPost201ResponseOrderInformationLineItems, VasV2PaymentsPost201ResponseOrderInformationTaxDetails, VasV2PaymentsPost201ResponseTaxInformation, VasV2PaymentsPost400Response, VasV2TaxVoid200Response, VasV2TaxVoid200ResponseVoidAmountDetails, VasV2TaxVoidsPost400Response, Vasv2taxBuyerInformation, Vasv2taxClientReferenceInformation, Vasv2taxMerchantInformation, Vasv2taxOrderInformation, Vasv2taxOrderInformationBillTo, Vasv2taxOrderInformationInvoiceDetails, Vasv2taxOrderInformationLineItems, Vasv2taxOrderInformationOrderAcceptance, Vasv2taxOrderInformationOrderOrigin, Vasv2taxOrderInformationShipTo, Vasv2taxOrderInformationShippingDetails, Vasv2taxTaxInformation, Vasv2taxidClientReferenceInformation, Vasv2taxidClientReferenceInformationPartner, VerifyCustomerAddressRequest, VoidCaptureRequest, VoidCreditRequest, VoidPaymentRequest, VoidRefundRequest, VoidTaxRequest, AccessTokenResponse, BadRequestError, CreateAccessTokenRequest, ResourceNotFoundError, UnauthorizedClientError, AsymmetricKeyManagementApi, CaptureApi, ChargebackDetailsApi, ChargebackSummariesApi, ConversionDetailsApi, CreditApi, CustomerApi, CustomerPaymentInstrumentApi, CustomerShippingAddressApi, DecisionManagerApi, DownloadDTDApi, DownloadXSDApi, InstrumentIdentifierApi, InterchangeClearingLevelDetailsApi, InvoiceSettingsApi, InvoicesApi, KeyGenerationApi, NetFundingsApi, NotificationOfChangesApi, PayerAuthenticationApi, PaymentBatchSummariesApi, PaymentInstrumentApi, PaymentsApi, PayoutsApi, PurchaseAndRefundDetailsApi, RefundApi, ReportDefinitionsApi, ReportDownloadsApi, ReportSubscriptionsApi, ReportsApi, RetrievalDetailsApi, RetrievalSummariesApi, ReversalApi, SearchTransactionsApi, SecureFileShareApi, SymmetricKeyManagementApi, TaxesApi, TokenizationApi, TransactionBatchesApi, TransactionDetailsApi, UserManagementApi, UserManagementSearchApi, VerificationApi, VoidApi, OAuthApi) { +}(function(ApiClient, AddNegativeListRequest, AuthReversalRequest, CapturePaymentRequest, CheckPayerAuthEnrollmentRequest, CreateAdhocReportRequest, CreateBundledDecisionManagerCaseRequest, CreateCreditRequest, CreateInvoiceRequest, CreateP12KeysRequest, CreatePaymentRequest, CreateReportSubscriptionRequest, CreateSearchRequest, CreateSharedSecretKeysRequest, CreateSharedSecretKeysVerifiRequest, DeleteBulkP12KeysRequest, DeleteBulkSymmetricKeysRequest, FlexV1KeysPost200Response, FlexV1KeysPost200ResponseDer, FlexV1KeysPost200ResponseJwk, FlexV1TokensPost200Response, Flexv1tokensCardInfo, FraudMarkingActionRequest, GeneratePublicKeyRequest, IncrementAuthRequest, InlineResponse400, InlineResponse4001, InlineResponse4001Fields, InlineResponse4002, InlineResponse400Details, InlineResponse400Errors, InlineResponse502, InlineResponseDefault, InlineResponseDefaultLinks, InlineResponseDefaultLinksNext, InlineResponseDefaultResponseStatus, InlineResponseDefaultResponseStatusDetails, InvoiceSettingsRequest, InvoicingV2InvoiceSettingsGet200Response, InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformation, InvoicingV2InvoiceSettingsGet200ResponseInvoiceSettingsInformationHeaderStyle, InvoicingV2InvoicesAllGet200Response, InvoicingV2InvoicesAllGet200ResponseCustomerInformation, InvoicingV2InvoicesAllGet200ResponseInvoiceInformation, InvoicingV2InvoicesAllGet200ResponseInvoices, InvoicingV2InvoicesAllGet200ResponseLinks, InvoicingV2InvoicesAllGet200ResponseLinks1, InvoicingV2InvoicesAllGet200ResponseOrderInformation, InvoicingV2InvoicesAllGet200ResponseOrderInformationAmountDetails, InvoicingV2InvoicesAllGet400Response, InvoicingV2InvoicesAllGet404Response, InvoicingV2InvoicesAllGet502Response, InvoicingV2InvoicesGet200Response, InvoicingV2InvoicesGet200ResponseInvoiceHistory, InvoicingV2InvoicesGet200ResponseTransactionDetails, InvoicingV2InvoicesPost201Response, InvoicingV2InvoicesPost201ResponseInvoiceInformation, InvoicingV2InvoicesPost201ResponseOrderInformation, InvoicingV2InvoicesPost201ResponseOrderInformationAmountDetails, InvoicingV2InvoicesPost202Response, Invoicingv2invoiceSettingsInvoiceSettingsInformation, Invoicingv2invoicesCustomerInformation, Invoicingv2invoicesInvoiceInformation, Invoicingv2invoicesOrderInformation, Invoicingv2invoicesOrderInformationAmountDetails, Invoicingv2invoicesOrderInformationAmountDetailsFreight, Invoicingv2invoicesOrderInformationAmountDetailsTaxDetails, Invoicingv2invoicesOrderInformationLineItems, Invoicingv2invoicesidInvoiceInformation, KmsV2KeysAsymDeletesPost200Response, KmsV2KeysAsymDeletesPost200ResponseKeyInformation, KmsV2KeysAsymGet200Response, KmsV2KeysAsymGet200ResponseKeyInformation, KmsV2KeysAsymPost201Response, KmsV2KeysAsymPost201ResponseCertificateInformation, KmsV2KeysAsymPost201ResponseKeyInformation, KmsV2KeysSymDeletesPost200Response, KmsV2KeysSymDeletesPost200ResponseKeyInformation, KmsV2KeysSymGet200Response, KmsV2KeysSymGet200ResponseKeyInformation, KmsV2KeysSymPost201Response, KmsV2KeysSymPost201ResponseErrorInformation, KmsV2KeysSymPost201ResponseKeyInformation, Kmsv2keysasymKeyInformation, Kmsv2keyssymClientReferenceInformation, Kmsv2keyssymKeyInformation, Kmsv2keyssymdeletesKeyInformation, Kmsv2keyssymverifiKeyInformation, MitReversalRequest, MitVoidRequest, OctCreatePaymentRequest, PatchCustomerPaymentInstrumentRequest, PatchCustomerRequest, PatchCustomerShippingAddressRequest, PatchInstrumentIdentifierRequest, PatchPaymentInstrumentRequest, PayerAuthSetupRequest, PaymentInstrumentList, PaymentInstrumentListEmbedded, PaymentInstrumentListLinks, PaymentInstrumentListLinksFirst, PaymentInstrumentListLinksLast, PaymentInstrumentListLinksNext, PaymentInstrumentListLinksPrev, PaymentInstrumentListLinksSelf, PostCustomerPaymentInstrumentRequest, PostCustomerRequest, PostCustomerShippingAddressRequest, PostInstrumentIdentifierEnrollmentRequest, PostInstrumentIdentifierRequest, PostPaymentInstrumentRequest, PredefinedSubscriptionRequestBean, PtsV1TransactionBatchesGet200Response, PtsV1TransactionBatchesGet200ResponseLinks, PtsV1TransactionBatchesGet200ResponseLinksSelf, PtsV1TransactionBatchesGet200ResponseTransactionBatches, PtsV1TransactionBatchesGet400Response, PtsV1TransactionBatchesGet400ResponseErrorInformation, PtsV1TransactionBatchesGet400ResponseErrorInformationDetails, PtsV1TransactionBatchesGet500Response, PtsV1TransactionBatchesGet500ResponseErrorInformation, PtsV1TransactionBatchesIdGet200Response, PtsV1TransactionBatchesIdGet200ResponseLinks, PtsV1TransactionBatchesIdGet200ResponseLinksTransactions, PtsV2CreditsPost201Response, PtsV2CreditsPost201ResponseCreditAmountDetails, PtsV2CreditsPost201ResponsePaymentInformation, PtsV2CreditsPost201ResponseProcessingInformation, PtsV2CreditsPost201ResponseProcessingInformationBankTransferOptions, PtsV2IncrementalAuthorizationPatch201Response, PtsV2IncrementalAuthorizationPatch201ResponseClientReferenceInformation, PtsV2IncrementalAuthorizationPatch201ResponseErrorInformation, PtsV2IncrementalAuthorizationPatch201ResponseLinks, PtsV2IncrementalAuthorizationPatch201ResponseOrderInformation, PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformation, PtsV2IncrementalAuthorizationPatch201ResponsePaymentInformationAccountFeatures, PtsV2IncrementalAuthorizationPatch201ResponseProcessorInformation, PtsV2IncrementalAuthorizationPatch400Response, PtsV2PaymentsCapturesPost201Response, PtsV2PaymentsCapturesPost201ResponseLinks, PtsV2PaymentsCapturesPost201ResponseOrderInformation, PtsV2PaymentsCapturesPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsCapturesPost201ResponseOrderInformationInvoiceDetails, PtsV2PaymentsCapturesPost201ResponsePointOfSaleInformation, PtsV2PaymentsCapturesPost201ResponseProcessingInformation, PtsV2PaymentsCapturesPost201ResponseProcessorInformation, PtsV2PaymentsCapturesPost400Response, PtsV2PaymentsPost201Response, PtsV2PaymentsPost201ResponseBuyerInformation, PtsV2PaymentsPost201ResponseClientReferenceInformation, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformation, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationIvr, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthentication, PtsV2PaymentsPost201ResponseConsumerAuthenticationInformationStrongAuthenticationIssuerInformation, PtsV2PaymentsPost201ResponseErrorInformation, PtsV2PaymentsPost201ResponseErrorInformationDetails, PtsV2PaymentsPost201ResponseInstallmentInformation, PtsV2PaymentsPost201ResponseIssuerInformation, PtsV2PaymentsPost201ResponseLinks, PtsV2PaymentsPost201ResponseLinksSelf, PtsV2PaymentsPost201ResponseOrderInformation, PtsV2PaymentsPost201ResponseOrderInformationAmountDetails, PtsV2PaymentsPost201ResponseOrderInformationInvoiceDetails, PtsV2PaymentsPost201ResponseOrderInformationRewardPointsDetails, PtsV2PaymentsPost201ResponsePaymentAccountInformation, PtsV2PaymentsPost201ResponsePaymentAccountInformationCard, PtsV2PaymentsPost201ResponsePaymentInformation, PtsV2PaymentsPost201ResponsePaymentInformationAccountFeatures, PtsV2PaymentsPost201ResponsePaymentInformationAccountFeaturesBalances, PtsV2PaymentsPost201ResponsePaymentInformationBank, PtsV2PaymentsPost201ResponsePaymentInformationBankAccount, PtsV2PaymentsPost201ResponsePaymentInformationInstrumentIdentifier, PtsV2PaymentsPost201ResponsePaymentInformationTokenizedCard, PtsV2PaymentsPost201ResponsePaymentInsightsInformation, PtsV2PaymentsPost201ResponsePaymentInsightsInformationResponseInsights, PtsV2PaymentsPost201ResponsePointOfSaleInformation, PtsV2PaymentsPost201ResponsePointOfSaleInformationEmv, PtsV2PaymentsPost201ResponseProcessingInformation, PtsV2PaymentsPost201ResponseProcessingInformationBankTransferOptions, PtsV2PaymentsPost201ResponseProcessorInformation, PtsV2PaymentsPost201ResponseProcessorInformationAchVerification, PtsV2PaymentsPost201ResponseProcessorInformationAvs, PtsV2PaymentsPost201ResponseProcessorInformationCardVerification, PtsV2PaymentsPost201ResponseProcessorInformationConsumerAuthenticationResponse, PtsV2PaymentsPost201ResponseProcessorInformationCustomer, PtsV2PaymentsPost201ResponseProcessorInformationElectronicVerificationResults, PtsV2PaymentsPost201ResponseProcessorInformationMerchantAdvice, PtsV2PaymentsPost201ResponseProcessorInformationRouting, PtsV2PaymentsPost201ResponseRiskInformation, PtsV2PaymentsPost201ResponseRiskInformationInfoCodes, PtsV2PaymentsPost201ResponseRiskInformationIpAddress, PtsV2PaymentsPost201ResponseRiskInformationProfile, PtsV2PaymentsPost201ResponseRiskInformationProviders, PtsV2PaymentsPost201ResponseRiskInformationProvidersProviderName, PtsV2PaymentsPost201ResponseRiskInformationRules, PtsV2PaymentsPost201ResponseRiskInformationScore, PtsV2PaymentsPost201ResponseRiskInformationTravel, PtsV2PaymentsPost201ResponseRiskInformationTravelActualFinalDestination, PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDeparture, PtsV2PaymentsPost201ResponseRiskInformationTravelFirstDestination, PtsV2PaymentsPost201ResponseRiskInformationTravelLastDestination, PtsV2PaymentsPost201ResponseRiskInformationVelocity, PtsV2PaymentsPost201ResponseRiskInformationVelocityMorphing, PtsV2PaymentsPost201ResponseTokenInformation, PtsV2PaymentsPost201ResponseTokenInformationCustomer, PtsV2PaymentsPost201ResponseTokenInformationInstrumentIdentifier, PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument, PtsV2PaymentsPost201ResponseTokenInformationShippingAddress, PtsV2PaymentsPost400Response, PtsV2PaymentsPost502Response, PtsV2PaymentsRefundPost201Response, PtsV2PaymentsRefundPost201ResponseLinks, PtsV2PaymentsRefundPost201ResponseOrderInformation, PtsV2PaymentsRefundPost201ResponseProcessorInformation, PtsV2PaymentsRefundPost201ResponseRefundAmountDetails, PtsV2PaymentsRefundPost400Response, PtsV2PaymentsReversalsPost201Response, PtsV2PaymentsReversalsPost201ResponseAuthorizationInformation, PtsV2PaymentsReversalsPost201ResponseIssuerInformation, PtsV2PaymentsReversalsPost201ResponseProcessorInformation, PtsV2PaymentsReversalsPost201ResponseReversalAmountDetails, PtsV2PaymentsReversalsPost400Response, PtsV2PaymentsVoidsPost201Response, PtsV2PaymentsVoidsPost201ResponseProcessorInformation, PtsV2PaymentsVoidsPost201ResponseVoidAmountDetails, PtsV2PaymentsVoidsPost400Response, PtsV2PayoutsPost201Response, PtsV2PayoutsPost201ResponseErrorInformation, PtsV2PayoutsPost201ResponseMerchantInformation, PtsV2PayoutsPost201ResponseMerchantInformationMerchantDescriptor, PtsV2PayoutsPost201ResponseOrderInformation, PtsV2PayoutsPost201ResponseOrderInformationAmountDetails, PtsV2PayoutsPost201ResponseProcessorInformation, PtsV2PayoutsPost201ResponseRecipientInformation, PtsV2PayoutsPost201ResponseRecipientInformationCard, PtsV2PayoutsPost400Response, Ptsv2creditsInstallmentInformation, Ptsv2creditsProcessingInformation, Ptsv2creditsProcessingInformationBankTransferOptions, Ptsv2creditsProcessingInformationElectronicBenefitsTransfer, Ptsv2creditsProcessingInformationJapanPaymentOptions, Ptsv2creditsProcessingInformationPurchaseOptions, Ptsv2paymentsAcquirerInformation, Ptsv2paymentsAggregatorInformation, Ptsv2paymentsAggregatorInformationSubMerchant, Ptsv2paymentsBuyerInformation, Ptsv2paymentsBuyerInformationPersonalIdentification, Ptsv2paymentsClientReferenceInformation, Ptsv2paymentsClientReferenceInformationPartner, Ptsv2paymentsConsumerAuthenticationInformation, Ptsv2paymentsConsumerAuthenticationInformationStrongAuthentication, Ptsv2paymentsDeviceInformation, Ptsv2paymentsDeviceInformationRawData, Ptsv2paymentsHealthCareInformation, Ptsv2paymentsHealthCareInformationAmountDetails, Ptsv2paymentsInstallmentInformation, Ptsv2paymentsInvoiceDetails, Ptsv2paymentsIssuerInformation, Ptsv2paymentsMerchantDefinedInformation, Ptsv2paymentsMerchantInformation, Ptsv2paymentsMerchantInformationMerchantDescriptor, Ptsv2paymentsMerchantInformationServiceFeeDescriptor, Ptsv2paymentsOrderInformation, Ptsv2paymentsOrderInformationAmountDetails, Ptsv2paymentsOrderInformationAmountDetailsAmexAdditionalAmounts, Ptsv2paymentsOrderInformationAmountDetailsCurrencyConversion, Ptsv2paymentsOrderInformationAmountDetailsSurcharge, Ptsv2paymentsOrderInformationAmountDetailsTaxDetails, Ptsv2paymentsOrderInformationBillTo, Ptsv2paymentsOrderInformationBillToCompany, Ptsv2paymentsOrderInformationInvoiceDetails, Ptsv2paymentsOrderInformationInvoiceDetailsTransactionAdviceAddendum, Ptsv2paymentsOrderInformationLineItems, Ptsv2paymentsOrderInformationPassenger, Ptsv2paymentsOrderInformationShipTo, Ptsv2paymentsOrderInformationShippingDetails, Ptsv2paymentsPaymentInformation, Ptsv2paymentsPaymentInformationBank, Ptsv2paymentsPaymentInformationBankAccount, Ptsv2paymentsPaymentInformationCard, Ptsv2paymentsPaymentInformationCustomer, Ptsv2paymentsPaymentInformationEWallet, Ptsv2paymentsPaymentInformationFluidData, Ptsv2paymentsPaymentInformationInstrumentIdentifier, Ptsv2paymentsPaymentInformationLegacyToken, Ptsv2paymentsPaymentInformationPaymentInstrument, Ptsv2paymentsPaymentInformationPaymentType, Ptsv2paymentsPaymentInformationPaymentTypeMethod, Ptsv2paymentsPaymentInformationShippingAddress, Ptsv2paymentsPaymentInformationTokenizedCard, Ptsv2paymentsPointOfSaleInformation, Ptsv2paymentsPointOfSaleInformationEmv, Ptsv2paymentsProcessingInformation, Ptsv2paymentsProcessingInformationAuthorizationOptions, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiator, Ptsv2paymentsProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Ptsv2paymentsProcessingInformationBankTransferOptions, Ptsv2paymentsProcessingInformationCaptureOptions, Ptsv2paymentsProcessingInformationElectronicBenefitsTransfer, Ptsv2paymentsProcessingInformationJapanPaymentOptions, Ptsv2paymentsProcessingInformationLoanOptions, Ptsv2paymentsProcessingInformationPurchaseOptions, Ptsv2paymentsProcessingInformationRecurringOptions, Ptsv2paymentsProcessorInformation, Ptsv2paymentsProcessorInformationAuthorizationOptions, Ptsv2paymentsPromotionInformation, Ptsv2paymentsRecipientInformation, Ptsv2paymentsRecurringPaymentInformation, Ptsv2paymentsRiskInformation, Ptsv2paymentsRiskInformationAuxiliaryData, Ptsv2paymentsRiskInformationBuyerHistory, Ptsv2paymentsRiskInformationBuyerHistoryAccountHistory, Ptsv2paymentsRiskInformationBuyerHistoryCustomerAccount, Ptsv2paymentsRiskInformationProfile, Ptsv2paymentsTokenInformation, Ptsv2paymentsTokenInformationPaymentInstrument, Ptsv2paymentsTokenInformationShippingAddress, Ptsv2paymentsTravelInformation, Ptsv2paymentsTravelInformationAgency, Ptsv2paymentsTravelInformationAutoRental, Ptsv2paymentsTravelInformationAutoRentalRentalAddress, Ptsv2paymentsTravelInformationAutoRentalReturnAddress, Ptsv2paymentsTravelInformationAutoRentalTaxDetails, Ptsv2paymentsTravelInformationLodging, Ptsv2paymentsTravelInformationLodgingRoom, Ptsv2paymentsTravelInformationTransit, Ptsv2paymentsTravelInformationTransitAirline, Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformation, Ptsv2paymentsTravelInformationTransitAirlineAncillaryInformationService, Ptsv2paymentsTravelInformationTransitAirlineLegs, Ptsv2paymentsTravelInformationTransitAirlineTicketIssuer, Ptsv2paymentsidClientReferenceInformation, Ptsv2paymentsidClientReferenceInformationPartner, Ptsv2paymentsidMerchantInformation, Ptsv2paymentsidOrderInformation, Ptsv2paymentsidOrderInformationAmountDetails, Ptsv2paymentsidProcessingInformation, Ptsv2paymentsidProcessingInformationAuthorizationOptions, Ptsv2paymentsidProcessingInformationAuthorizationOptionsInitiator, Ptsv2paymentsidTravelInformation, Ptsv2paymentsidcapturesAggregatorInformation, Ptsv2paymentsidcapturesAggregatorInformationSubMerchant, Ptsv2paymentsidcapturesBuyerInformation, Ptsv2paymentsidcapturesDeviceInformation, Ptsv2paymentsidcapturesInstallmentInformation, Ptsv2paymentsidcapturesMerchantInformation, Ptsv2paymentsidcapturesOrderInformation, Ptsv2paymentsidcapturesOrderInformationAmountDetails, Ptsv2paymentsidcapturesOrderInformationBillTo, Ptsv2paymentsidcapturesOrderInformationInvoiceDetails, Ptsv2paymentsidcapturesOrderInformationShipTo, Ptsv2paymentsidcapturesOrderInformationShippingDetails, Ptsv2paymentsidcapturesPaymentInformation, Ptsv2paymentsidcapturesPaymentInformationCard, Ptsv2paymentsidcapturesPointOfSaleInformation, Ptsv2paymentsidcapturesPointOfSaleInformationEmv, Ptsv2paymentsidcapturesProcessingInformation, Ptsv2paymentsidcapturesProcessingInformationAuthorizationOptions, Ptsv2paymentsidcapturesProcessingInformationCaptureOptions, Ptsv2paymentsidrefundsMerchantInformation, Ptsv2paymentsidrefundsOrderInformation, Ptsv2paymentsidrefundsOrderInformationLineItems, Ptsv2paymentsidrefundsPaymentInformation, Ptsv2paymentsidrefundsPaymentInformationBank, Ptsv2paymentsidrefundsPaymentInformationCard, Ptsv2paymentsidrefundsPointOfSaleInformation, Ptsv2paymentsidrefundsProcessingInformation, Ptsv2paymentsidrefundsProcessingInformationRecurringOptions, Ptsv2paymentsidreversalsClientReferenceInformation, Ptsv2paymentsidreversalsClientReferenceInformationPartner, Ptsv2paymentsidreversalsOrderInformation, Ptsv2paymentsidreversalsOrderInformationAmountDetails, Ptsv2paymentsidreversalsOrderInformationLineItems, Ptsv2paymentsidreversalsPointOfSaleInformation, Ptsv2paymentsidreversalsPointOfSaleInformationEmv, Ptsv2paymentsidreversalsProcessingInformation, Ptsv2paymentsidreversalsReversalInformation, Ptsv2paymentsidreversalsReversalInformationAmountDetails, Ptsv2paymentsidvoidsOrderInformation, Ptsv2paymentsidvoidsPaymentInformation, Ptsv2payoutsClientReferenceInformation, Ptsv2payoutsMerchantInformation, Ptsv2payoutsMerchantInformationMerchantDescriptor, Ptsv2payoutsOrderInformation, Ptsv2payoutsOrderInformationAmountDetails, Ptsv2payoutsOrderInformationAmountDetailsSurcharge, Ptsv2payoutsOrderInformationBillTo, Ptsv2payoutsPaymentInformation, Ptsv2payoutsPaymentInformationCard, Ptsv2payoutsProcessingInformation, Ptsv2payoutsProcessingInformationFundingOptions, Ptsv2payoutsProcessingInformationFundingOptionsInitiator, Ptsv2payoutsProcessingInformationPayoutsOptions, Ptsv2payoutsRecipientInformation, Ptsv2payoutsSenderInformation, Ptsv2payoutsSenderInformationAccount, Ptsv2voidsProcessingInformation, RefundCaptureRequest, RefundPaymentRequest, ReportingV3ChargebackDetailsGet200Response, ReportingV3ChargebackDetailsGet200ResponseChargebackDetails, ReportingV3ChargebackSummariesGet200Response, ReportingV3ChargebackSummariesGet200ResponseChargebackSummaries, ReportingV3ConversionDetailsGet200Response, ReportingV3ConversionDetailsGet200ResponseConversionDetails, ReportingV3ConversionDetailsGet200ResponseNotes, ReportingV3InterchangeClearingLevelDetailsGet200Response, ReportingV3InterchangeClearingLevelDetailsGet200ResponseInterchangeClearingLevelDetails, ReportingV3NetFundingsGet200Response, ReportingV3NetFundingsGet200ResponseNetFundingSummaries, ReportingV3NetFundingsGet200ResponseTotalPurchases, ReportingV3NotificationofChangesGet200Response, ReportingV3NotificationofChangesGet200ResponseNotificationOfChanges, ReportingV3PaymentBatchSummariesGet200Response, ReportingV3PaymentBatchSummariesGet200ResponsePaymentBatchSummaries, ReportingV3PurchaseRefundDetailsGet200Response, ReportingV3PurchaseRefundDetailsGet200ResponseAuthorizations, ReportingV3PurchaseRefundDetailsGet200ResponseFeeAndFundingDetails, ReportingV3PurchaseRefundDetailsGet200ResponseOthers, ReportingV3PurchaseRefundDetailsGet200ResponseRequestDetails, ReportingV3PurchaseRefundDetailsGet200ResponseSettlementStatuses, ReportingV3PurchaseRefundDetailsGet200ResponseSettlements, ReportingV3ReportDefinitionsGet200Response, ReportingV3ReportDefinitionsGet200ResponseReportDefinitions, ReportingV3ReportDefinitionsNameGet200Response, ReportingV3ReportDefinitionsNameGet200ResponseAttributes, ReportingV3ReportDefinitionsNameGet200ResponseDefaultSettings, ReportingV3ReportSubscriptionsGet200Response, ReportingV3ReportSubscriptionsGet200ResponseSubscriptions, ReportingV3ReportsGet200Response, ReportingV3ReportsGet200ResponseLink, ReportingV3ReportsGet200ResponseLinkReportDownload, ReportingV3ReportsGet200ResponseReportSearchResults, ReportingV3ReportsIdGet200Response, ReportingV3RetrievalDetailsGet200Response, ReportingV3RetrievalDetailsGet200ResponseRetrievalDetails, ReportingV3RetrievalSummariesGet200Response, Reportingv3ReportDownloadsGet400Response, Reportingv3ReportDownloadsGet400ResponseDetails, Reportingv3reportsReportFilters, Reportingv3reportsReportPreferences, RiskV1AddressVerificationsPost201Response, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformation, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationBarCode, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddress, RiskV1AddressVerificationsPost201ResponseAddressVerificationInformationStandardAddressAddress1, RiskV1AddressVerificationsPost201ResponseErrorInformation, RiskV1AuthenticationResultsPost201Response, RiskV1AuthenticationResultsPost201ResponseConsumerAuthenticationInformation, RiskV1AuthenticationSetupsPost201Response, RiskV1AuthenticationSetupsPost201ResponseConsumerAuthenticationInformation, RiskV1AuthenticationSetupsPost201ResponseErrorInformation, RiskV1AuthenticationsPost201Response, RiskV1AuthenticationsPost201ResponseErrorInformation, RiskV1AuthenticationsPost400Response, RiskV1AuthenticationsPost400Response1, RiskV1DecisionsPost201Response, RiskV1DecisionsPost201ResponseClientReferenceInformation, RiskV1DecisionsPost201ResponseConsumerAuthenticationInformation, RiskV1DecisionsPost201ResponseErrorInformation, RiskV1DecisionsPost201ResponseOrderInformation, RiskV1DecisionsPost201ResponseOrderInformationAmountDetails, RiskV1DecisionsPost201ResponsePaymentInformation, RiskV1DecisionsPost400Response, RiskV1DecisionsPost400Response1, RiskV1ExportComplianceInquiriesPost201Response, RiskV1ExportComplianceInquiriesPost201ResponseErrorInformation, RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformation, RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchList, RiskV1ExportComplianceInquiriesPost201ResponseExportComplianceInformationWatchListMatches, RiskV1UpdatePost201Response, Riskv1addressverificationsBuyerInformation, Riskv1addressverificationsOrderInformation, Riskv1addressverificationsOrderInformationBillTo, Riskv1addressverificationsOrderInformationLineItems, Riskv1addressverificationsOrderInformationShipTo, Riskv1authenticationresultsConsumerAuthenticationInformation, Riskv1authenticationresultsDeviceInformation, Riskv1authenticationresultsOrderInformation, Riskv1authenticationresultsOrderInformationAmountDetails, Riskv1authenticationresultsOrderInformationLineItems, Riskv1authenticationresultsPaymentInformation, Riskv1authenticationresultsPaymentInformationCard, Riskv1authenticationresultsPaymentInformationFluidData, Riskv1authenticationresultsPaymentInformationTokenizedCard, Riskv1authenticationsBuyerInformation, Riskv1authenticationsDeviceInformation, Riskv1authenticationsOrderInformation, Riskv1authenticationsOrderInformationAmountDetails, Riskv1authenticationsOrderInformationBillTo, Riskv1authenticationsOrderInformationLineItems, Riskv1authenticationsPaymentInformation, Riskv1authenticationsPaymentInformationCard, Riskv1authenticationsPaymentInformationTokenizedCard, Riskv1authenticationsRiskInformation, Riskv1authenticationsTravelInformation, Riskv1authenticationsetupsPaymentInformation, Riskv1authenticationsetupsPaymentInformationCard, Riskv1authenticationsetupsPaymentInformationCustomer, Riskv1authenticationsetupsPaymentInformationFluidData, Riskv1authenticationsetupsPaymentInformationTokenizedCard, Riskv1authenticationsetupsProcessingInformation, Riskv1authenticationsetupsTokenInformation, Riskv1decisionsBuyerInformation, Riskv1decisionsClientReferenceInformation, Riskv1decisionsClientReferenceInformationPartner, Riskv1decisionsConsumerAuthenticationInformation, Riskv1decisionsConsumerAuthenticationInformationStrongAuthentication, Riskv1decisionsDeviceInformation, Riskv1decisionsMerchantDefinedInformation, Riskv1decisionsMerchantInformation, Riskv1decisionsMerchantInformationMerchantDescriptor, Riskv1decisionsOrderInformation, Riskv1decisionsOrderInformationAmountDetails, Riskv1decisionsOrderInformationBillTo, Riskv1decisionsOrderInformationLineItems, Riskv1decisionsOrderInformationShipTo, Riskv1decisionsOrderInformationShippingDetails, Riskv1decisionsPaymentInformation, Riskv1decisionsPaymentInformationCard, Riskv1decisionsPaymentInformationTokenizedCard, Riskv1decisionsProcessingInformation, Riskv1decisionsProcessorInformation, Riskv1decisionsProcessorInformationAvs, Riskv1decisionsProcessorInformationCardVerification, Riskv1decisionsRiskInformation, Riskv1decisionsTravelInformation, Riskv1decisionsTravelInformationLegs, Riskv1decisionsTravelInformationPassengers, Riskv1decisionsidmarkingRiskInformation, Riskv1decisionsidmarkingRiskInformationMarkingDetails, Riskv1exportcomplianceinquiriesDeviceInformation, Riskv1exportcomplianceinquiriesExportComplianceInformation, Riskv1exportcomplianceinquiriesExportComplianceInformationWeights, Riskv1exportcomplianceinquiriesOrderInformation, Riskv1exportcomplianceinquiriesOrderInformationBillTo, Riskv1exportcomplianceinquiriesOrderInformationBillToCompany, Riskv1exportcomplianceinquiriesOrderInformationLineItems, Riskv1exportcomplianceinquiriesOrderInformationShipTo, Riskv1liststypeentriesBuyerInformation, Riskv1liststypeentriesClientReferenceInformation, Riskv1liststypeentriesDeviceInformation, Riskv1liststypeentriesOrderInformation, Riskv1liststypeentriesOrderInformationAddress, Riskv1liststypeentriesOrderInformationBillTo, Riskv1liststypeentriesOrderInformationLineItems, Riskv1liststypeentriesOrderInformationShipTo, Riskv1liststypeentriesPaymentInformation, Riskv1liststypeentriesPaymentInformationBank, Riskv1liststypeentriesPaymentInformationCard, Riskv1liststypeentriesRiskInformation, Riskv1liststypeentriesRiskInformationMarkingDetails, SearchRequest, ShippingAddressListForCustomer, ShippingAddressListForCustomerEmbedded, ShippingAddressListForCustomerLinks, ShippingAddressListForCustomerLinksFirst, ShippingAddressListForCustomerLinksLast, ShippingAddressListForCustomerLinksNext, ShippingAddressListForCustomerLinksPrev, ShippingAddressListForCustomerLinksSelf, TaxRequest, TmsV2CustomersResponse, Tmsv2customersBuyerInformation, Tmsv2customersClientReferenceInformation, Tmsv2customersDefaultPaymentInstrument, Tmsv2customersDefaultShippingAddress, Tmsv2customersEmbedded, Tmsv2customersEmbeddedDefaultPaymentInstrument, Tmsv2customersEmbeddedDefaultPaymentInstrumentBankAccount, Tmsv2customersEmbeddedDefaultPaymentInstrumentBillTo, Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationIssuedBy, Tmsv2customersEmbeddedDefaultPaymentInstrumentBuyerInformationPersonalIdentification, Tmsv2customersEmbeddedDefaultPaymentInstrumentCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentCardTokenizedInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbedded, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifier, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBankAccount, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierBillTo, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierIssuer, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinks, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksPaymentInstruments, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierLinksSelf, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierMetadata, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptions, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiator, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierProcessingInformationAuthorizationOptionsInitiatorMerchantInitiatedTransaction, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentEmbeddedInstrumentIdentifierTokenizedCardCard, Tmsv2customersEmbeddedDefaultPaymentInstrumentInstrumentIdentifier, Tmsv2customersEmbeddedDefaultPaymentInstrumentLinks, Tmsv2customersEmbeddedDefaultPaymentInstrumentLinksSelf, Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentMerchantInformationMerchantDescriptor, Tmsv2customersEmbeddedDefaultPaymentInstrumentMetadata, Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformation, Tmsv2customersEmbeddedDefaultPaymentInstrumentProcessingInformationBankTransferOptions, Tmsv2customersEmbeddedDefaultShippingAddress, Tmsv2customersEmbeddedDefaultShippingAddressLinks, Tmsv2customersEmbeddedDefaultShippingAddressLinksCustomer, Tmsv2customersEmbeddedDefaultShippingAddressLinksSelf, Tmsv2customersEmbeddedDefaultShippingAddressMetadata, Tmsv2customersEmbeddedDefaultShippingAddressShipTo, Tmsv2customersLinks, Tmsv2customersLinksPaymentInstruments, Tmsv2customersLinksSelf, Tmsv2customersLinksShippingAddress, Tmsv2customersMerchantDefinedInformation, Tmsv2customersMetadata, Tmsv2customersObjectInformation, TokenizeRequest, TssV2TransactionsGet200Response, TssV2TransactionsGet200ResponseApplicationInformation, TssV2TransactionsGet200ResponseApplicationInformationApplications, TssV2TransactionsGet200ResponseBuyerInformation, TssV2TransactionsGet200ResponseClientReferenceInformation, TssV2TransactionsGet200ResponseClientReferenceInformationPartner, TssV2TransactionsGet200ResponseConsumerAuthenticationInformation, TssV2TransactionsGet200ResponseConsumerAuthenticationInformationStrongAuthentication, TssV2TransactionsGet200ResponseDeviceInformation, TssV2TransactionsGet200ResponseErrorInformation, TssV2TransactionsGet200ResponseFraudMarkingInformation, TssV2TransactionsGet200ResponseInstallmentInformation, TssV2TransactionsGet200ResponseLinks, TssV2TransactionsGet200ResponseMerchantInformation, TssV2TransactionsGet200ResponseMerchantInformationMerchantDescriptor, TssV2TransactionsGet200ResponseOrderInformation, TssV2TransactionsGet200ResponseOrderInformationAmountDetails, TssV2TransactionsGet200ResponseOrderInformationBillTo, TssV2TransactionsGet200ResponseOrderInformationInvoiceDetails, TssV2TransactionsGet200ResponseOrderInformationLineItems, TssV2TransactionsGet200ResponseOrderInformationShipTo, TssV2TransactionsGet200ResponseOrderInformationShippingDetails, TssV2TransactionsGet200ResponsePaymentInformation, TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, TssV2TransactionsGet200ResponsePaymentInformationBank, TssV2TransactionsGet200ResponsePaymentInformationBankAccount, TssV2TransactionsGet200ResponsePaymentInformationBankMandate, TssV2TransactionsGet200ResponsePaymentInformationCard, TssV2TransactionsGet200ResponsePaymentInformationCustomer, TssV2TransactionsGet200ResponsePaymentInformationFluidData, TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier, TssV2TransactionsGet200ResponsePaymentInformationInvoice, TssV2TransactionsGet200ResponsePaymentInformationPaymentType, TssV2TransactionsGet200ResponsePointOfSaleInformation, TssV2TransactionsGet200ResponseProcessingInformation, TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptions, TssV2TransactionsGet200ResponseProcessingInformationAuthorizationOptionsInitiator, TssV2TransactionsGet200ResponseProcessingInformationBankTransferOptions, TssV2TransactionsGet200ResponseProcessingInformationJapanPaymentOptions, TssV2TransactionsGet200ResponseProcessorInformation, TssV2TransactionsGet200ResponseProcessorInformationElectronicVerificationResults, TssV2TransactionsGet200ResponseProcessorInformationMultiProcessorRouting, TssV2TransactionsGet200ResponseProcessorInformationProcessor, TssV2TransactionsGet200ResponseRiskInformation, TssV2TransactionsGet200ResponseRiskInformationProfile, TssV2TransactionsGet200ResponseRiskInformationRules, TssV2TransactionsGet200ResponseRiskInformationScore, TssV2TransactionsGet200ResponseSenderInformation, TssV2TransactionsGet200ResponseTokenInformation, TssV2TransactionsPost201Response, TssV2TransactionsPost201ResponseEmbedded, TssV2TransactionsPost201ResponseEmbeddedApplicationInformation, TssV2TransactionsPost201ResponseEmbeddedApplicationInformationApplications, TssV2TransactionsPost201ResponseEmbeddedBuyerInformation, TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation, TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner, TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation, TssV2TransactionsPost201ResponseEmbeddedLinks, TssV2TransactionsPost201ResponseEmbeddedMerchantInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformation, TssV2TransactionsPost201ResponseEmbeddedOrderInformationBillTo, TssV2TransactionsPost201ResponseEmbeddedOrderInformationShipTo, TssV2TransactionsPost201ResponseEmbeddedPaymentInformation, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBank, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationBankAccount, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCard, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationCustomer, TssV2TransactionsPost201ResponseEmbeddedPaymentInformationPaymentType, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformation, TssV2TransactionsPost201ResponseEmbeddedPointOfSaleInformationPartner, TssV2TransactionsPost201ResponseEmbeddedProcessingInformation, TssV2TransactionsPost201ResponseEmbeddedProcessorInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformation, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProviders, TssV2TransactionsPost201ResponseEmbeddedRiskInformationProvidersFingerprint, TssV2TransactionsPost201ResponseEmbeddedTransactionSummaries, TssV2TransactionsPost400Response, UmsV1UsersGet200Response, UmsV1UsersGet200ResponseAccountInformation, UmsV1UsersGet200ResponseContactInformation, UmsV1UsersGet200ResponseOrganizationInformation, UmsV1UsersGet200ResponseUsers, UpdateInvoiceRequest, V1FileDetailsGet200Response, V1FileDetailsGet200ResponseFileDetails, V1FileDetailsGet200ResponseLinks, V1FileDetailsGet200ResponseLinksFiles, V1FileDetailsGet200ResponseLinksSelf, ValidateExportComplianceRequest, ValidateRequest, VasV2PaymentsPost201Response, VasV2PaymentsPost201ResponseLinks, VasV2PaymentsPost201ResponseOrderInformation, VasV2PaymentsPost201ResponseOrderInformationJurisdiction, VasV2PaymentsPost201ResponseOrderInformationLineItems, VasV2PaymentsPost201ResponseOrderInformationTaxDetails, VasV2PaymentsPost201ResponseTaxInformation, VasV2PaymentsPost400Response, VasV2TaxVoid200Response, VasV2TaxVoid200ResponseVoidAmountDetails, VasV2TaxVoidsPost400Response, Vasv2taxBuyerInformation, Vasv2taxClientReferenceInformation, Vasv2taxMerchantInformation, Vasv2taxOrderInformation, Vasv2taxOrderInformationBillTo, Vasv2taxOrderInformationInvoiceDetails, Vasv2taxOrderInformationLineItems, Vasv2taxOrderInformationOrderAcceptance, Vasv2taxOrderInformationOrderOrigin, Vasv2taxOrderInformationShipTo, Vasv2taxOrderInformationShippingDetails, Vasv2taxTaxInformation, Vasv2taxidClientReferenceInformation, Vasv2taxidClientReferenceInformationPartner, VerifyCustomerAddressRequest, VoidCaptureRequest, VoidCreditRequest, VoidPaymentRequest, VoidRefundRequest, VoidTaxRequest, AccessTokenResponse, BadRequestError, CreateAccessTokenRequest, ResourceNotFoundError, UnauthorizedClientError, AsymmetricKeyManagementApi, CaptureApi, ChargebackDetailsApi, ChargebackSummariesApi, ConversionDetailsApi, CreditApi, CustomerApi, CustomerPaymentInstrumentApi, CustomerShippingAddressApi, DecisionManagerApi, DownloadDTDApi, DownloadXSDApi, InstrumentIdentifierApi, InterchangeClearingLevelDetailsApi, InvoiceSettingsApi, InvoicesApi, KeyGenerationApi, NetFundingsApi, NotificationOfChangesApi, PayerAuthenticationApi, PaymentBatchSummariesApi, PaymentInstrumentApi, PaymentsApi, PayoutsApi, PurchaseAndRefundDetailsApi, RefundApi, ReportDefinitionsApi, ReportDownloadsApi, ReportSubscriptionsApi, ReportsApi, RetrievalDetailsApi, RetrievalSummariesApi, ReversalApi, SearchTransactionsApi, SecureFileShareApi, SymmetricKeyManagementApi, TaxesApi, TokenizationApi, TransactionBatchesApi, TransactionDetailsApi, UserManagementApi, UserManagementSearchApi, VerificationApi, VoidApi, OAuthApi) { 'use strict'; /** @@ -211,6 +211,11 @@ * @property {module:model/InlineResponse400Errors} */ InlineResponse400Errors: InlineResponse400Errors, + /** + * The InlineResponse502 model constructor. + * @property {module:model/InlineResponse502} + */ + InlineResponse502: InlineResponse502, /** * The InlineResponseDefault model constructor. * @property {module:model/InlineResponseDefault} @@ -2031,6 +2036,11 @@ * @property {module:model/Ptsv2payoutsSenderInformationAccount} */ Ptsv2payoutsSenderInformationAccount: Ptsv2payoutsSenderInformationAccount, + /** + * The Ptsv2voidsProcessingInformation model constructor. + * @property {module:model/Ptsv2voidsProcessingInformation} + */ + Ptsv2voidsProcessingInformation: Ptsv2voidsProcessingInformation, /** * The RefundCaptureRequest model constructor. * @property {module:model/RefundCaptureRequest} @@ -3261,6 +3271,11 @@ * @property {module:model/TssV2TransactionsGet200ResponsePaymentInformationCustomer} */ TssV2TransactionsGet200ResponsePaymentInformationCustomer: TssV2TransactionsGet200ResponsePaymentInformationCustomer, + /** + * The TssV2TransactionsGet200ResponsePaymentInformationFluidData model constructor. + * @property {module:model/TssV2TransactionsGet200ResponsePaymentInformationFluidData} + */ + TssV2TransactionsGet200ResponsePaymentInformationFluidData: TssV2TransactionsGet200ResponsePaymentInformationFluidData, /** * The TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier model constructor. * @property {module:model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier} @@ -3386,6 +3401,11 @@ * @property {module:model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation} */ TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation: TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation, + /** + * The TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner model constructor. + * @property {module:model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner} + */ + TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner: TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner, /** * The TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation model constructor. * @property {module:model/TssV2TransactionsPost201ResponseEmbeddedConsumerAuthenticationInformation} diff --git a/src/model/InlineResponse4002.js b/src/model/InlineResponse4002.js index f6bc36bc..886bd992 100644 --- a/src/model/InlineResponse4002.js +++ b/src/model/InlineResponse4002.js @@ -51,6 +51,7 @@ + }; /** @@ -76,6 +77,9 @@ if (data.hasOwnProperty('message')) { obj['message'] = ApiClient.convertToType(data['message'], 'String'); } + if (data.hasOwnProperty('statusCode')) { + obj['statusCode'] = ApiClient.convertToType(data['statusCode'], 'String'); + } } return obj; } @@ -91,7 +95,7 @@ */ exports.prototype['status'] = undefined; /** - * The reason of the status. Possible values: - MISSING_FIELD - INVALID_DATA + * The reason of the status. Possible values: - MISSING_FIELD * @member {String} reason */ exports.prototype['reason'] = undefined; @@ -100,6 +104,11 @@ * @member {String} message */ exports.prototype['message'] = undefined; + /** + * HTTP status code of the submitted request. Possible values: - 500 + * @member {String} statusCode + */ + exports.prototype['statusCode'] = undefined; diff --git a/src/model/InlineResponse502.js b/src/model/InlineResponse502.js new file mode 100644 index 00000000..a2ed2def --- /dev/null +++ b/src/model/InlineResponse502.js @@ -0,0 +1,118 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['ApiClient'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + module.exports = factory(require('../ApiClient')); + } else { + // Browser globals (root is window) + if (!root.CyberSource) { + root.CyberSource = {}; + } + root.CyberSource.InlineResponse502 = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The InlineResponse502 model module. + * @module model/InlineResponse502 + * @version 0.0.1 + */ + + /** + * Constructs a new InlineResponse502. + * @alias module:model/InlineResponse502 + * @class + */ + var exports = function() { + var _this = this; + + + + + + + }; + + /** + * Constructs a InlineResponse502 from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/InlineResponse502} obj Optional instance to populate. + * @return {module:model/InlineResponse502} The populated InlineResponse502 instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('submitTimeUtc')) { + obj['submitTimeUtc'] = ApiClient.convertToType(data['submitTimeUtc'], 'String'); + } + if (data.hasOwnProperty('status')) { + obj['status'] = ApiClient.convertToType(data['status'], 'String'); + } + if (data.hasOwnProperty('reason')) { + obj['reason'] = ApiClient.convertToType(data['reason'], 'String'); + } + if (data.hasOwnProperty('message')) { + obj['message'] = ApiClient.convertToType(data['message'], 'String'); + } + if (data.hasOwnProperty('statusCode')) { + obj['statusCode'] = ApiClient.convertToType(data['statusCode'], 'String'); + } + } + return obj; + } + + /** + * 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. + * @member {String} submitTimeUtc + */ + exports.prototype['submitTimeUtc'] = undefined; + /** + * The status of the submitted transaction. Possible values: - SERVER_ERROR + * @member {String} status + */ + exports.prototype['status'] = undefined; + /** + * The reason of the status. Possible values: - SYSTEM_ERROR - SERVER_TIMEOUT - SERVICE_TIMEOUT + * @member {String} reason + */ + exports.prototype['reason'] = undefined; + /** + * The detail message related to the status and reason listed above. + * @member {String} message + */ + exports.prototype['message'] = undefined; + /** + * HTTP status code of the submitted request. Possible values: - 500 + * @member {String} statusCode + */ + exports.prototype['statusCode'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/KmsV2KeysSymPost201ResponseKeyInformation.js b/src/model/KmsV2KeysSymPost201ResponseKeyInformation.js index 36668c56..48abdb09 100644 --- a/src/model/KmsV2KeysSymPost201ResponseKeyInformation.js +++ b/src/model/KmsV2KeysSymPost201ResponseKeyInformation.js @@ -56,6 +56,7 @@ + }; /** @@ -72,6 +73,9 @@ if (data.hasOwnProperty('organizationId')) { obj['organizationId'] = ApiClient.convertToType(data['organizationId'], 'String'); } + if (data.hasOwnProperty('externalOrganizationId')) { + obj['externalOrganizationId'] = ApiClient.convertToType(data['externalOrganizationId'], 'String'); + } if (data.hasOwnProperty('referenceNumber')) { obj['referenceNumber'] = ApiClient.convertToType(data['referenceNumber'], 'String'); } @@ -102,6 +106,11 @@ * @member {String} organizationId */ exports.prototype['organizationId'] = undefined; + /** + * Payworks MerchantId for given organizationId. + * @member {String} externalOrganizationId + */ + exports.prototype['externalOrganizationId'] = undefined; /** * Reference number is a unique identifier provided by the client along with the organization Id. This is an optional field provided solely for the client’s convenience. If client specifies value for this field in the request, it is expected to be available in the response. * @member {String} referenceNumber diff --git a/src/model/MitVoidRequest.js b/src/model/MitVoidRequest.js index d0b8add0..dc8840b7 100644 --- a/src/model/MitVoidRequest.js +++ b/src/model/MitVoidRequest.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/Ptsv2paymentsClientReferenceInformation', 'model/Ptsv2paymentsidvoidsOrderInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation'], factory); + define(['ApiClient', 'model/Ptsv2paymentsClientReferenceInformation', 'model/Ptsv2paymentsidvoidsOrderInformation', 'model/Ptsv2paymentsidvoidsPaymentInformation', 'model/Ptsv2voidsProcessingInformation'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsClientReferenceInformation'), require('./Ptsv2paymentsidvoidsOrderInformation'), require('./Ptsv2paymentsidvoidsPaymentInformation')); + module.exports = factory(require('../ApiClient'), require('./Ptsv2paymentsClientReferenceInformation'), require('./Ptsv2paymentsidvoidsOrderInformation'), require('./Ptsv2paymentsidvoidsPaymentInformation'), require('./Ptsv2voidsProcessingInformation')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.MitVoidRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsClientReferenceInformation, root.CyberSource.Ptsv2paymentsidvoidsOrderInformation, root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation); + root.CyberSource.MitVoidRequest = factory(root.CyberSource.ApiClient, root.CyberSource.Ptsv2paymentsClientReferenceInformation, root.CyberSource.Ptsv2paymentsidvoidsOrderInformation, root.CyberSource.Ptsv2paymentsidvoidsPaymentInformation, root.CyberSource.Ptsv2voidsProcessingInformation); } -}(this, function(ApiClient, Ptsv2paymentsClientReferenceInformation, Ptsv2paymentsidvoidsOrderInformation, Ptsv2paymentsidvoidsPaymentInformation) { +}(this, function(ApiClient, Ptsv2paymentsClientReferenceInformation, Ptsv2paymentsidvoidsOrderInformation, Ptsv2paymentsidvoidsPaymentInformation, Ptsv2voidsProcessingInformation) { 'use strict'; @@ -50,6 +50,7 @@ + }; /** @@ -72,6 +73,9 @@ if (data.hasOwnProperty('orderInformation')) { obj['orderInformation'] = Ptsv2paymentsidvoidsOrderInformation.constructFromObject(data['orderInformation']); } + if (data.hasOwnProperty('processingInformation')) { + obj['processingInformation'] = Ptsv2voidsProcessingInformation.constructFromObject(data['processingInformation']); + } } return obj; } @@ -88,6 +92,10 @@ * @member {module:model/Ptsv2paymentsidvoidsOrderInformation} orderInformation */ exports.prototype['orderInformation'] = undefined; + /** + * @member {module:model/Ptsv2voidsProcessingInformation} processingInformation + */ + exports.prototype['processingInformation'] = undefined; diff --git a/src/model/Ptsv2paymentsPaymentInformationCard.js b/src/model/Ptsv2paymentsPaymentInformationCard.js index c4b169bf..e8386561 100644 --- a/src/model/Ptsv2paymentsPaymentInformationCard.js +++ b/src/model/Ptsv2paymentsPaymentInformationCard.js @@ -145,7 +145,7 @@ */ exports.prototype['type'] = undefined; /** - * Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. #### Cielo and Comercio Latino Possible values: - CREDIT: Credit card - DEBIT: Debit card This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier This field is supported only for Mastercard transactions in Brazil on CyberSource through VisaNet. + * Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. Possible values: - C: Credit transaction - D: Debit transaction This field is supported only for all card Types on Visa Platform Connect. This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier * @member {String} useAs */ exports.prototype['useAs'] = undefined; diff --git a/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.js b/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.js index 93d36e64..14b3b2e2 100644 --- a/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.js +++ b/src/model/Ptsv2paymentsPaymentInformationPaymentTypeMethod.js @@ -69,7 +69,7 @@ } /** - * A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal + * A Payment Type is enabled through a Method. Examples: Visa, Master Card, ApplePay, iDeal For Japan Payment Processing Valid Values: - 1 Banking Data - 2 Authorization Data * @member {String} name */ exports.prototype['name'] = undefined; diff --git a/src/model/Ptsv2paymentsPointOfSaleInformation.js b/src/model/Ptsv2paymentsPointOfSaleInformation.js index 408e38a0..bbf4a993 100644 --- a/src/model/Ptsv2paymentsPointOfSaleInformation.js +++ b/src/model/Ptsv2paymentsPointOfSaleInformation.js @@ -72,6 +72,7 @@ + }; @@ -93,6 +94,9 @@ if (data.hasOwnProperty('terminalSerialNumber')) { obj['terminalSerialNumber'] = ApiClient.convertToType(data['terminalSerialNumber'], 'String'); } + if (data.hasOwnProperty('cardholderVerificationMethodUsed')) { + obj['cardholderVerificationMethodUsed'] = ApiClient.convertToType(data['cardholderVerificationMethodUsed'], 'Number'); + } if (data.hasOwnProperty('laneNumber')) { obj['laneNumber'] = ApiClient.convertToType(data['laneNumber'], 'String'); } @@ -182,6 +186,11 @@ * @member {String} terminalSerialNumber */ exports.prototype['terminalSerialNumber'] = undefined; + /** + * Method that was used to verify the cardholder's identity. Possible values: - `0`: No verification - `1`: Signature - `2`: PIN - `3`: Cardholder device CVM + * @member {Number} cardholderVerificationMethodUsed + */ + exports.prototype['cardholderVerificationMethodUsed'] = undefined; /** * Identifier for an alternate terminal at your retail location. You define the value for this field. This field is supported only for MasterCard transactions on FDC Nashville Global. Otherwise, this field is not used by all other processors. Use the `terminalId` field to identify the main terminal at your retail location. If your retail location has multiple terminals, use this `laneNumber` field to identify the terminal used for the transaction. This field is a pass-through, which means that the value is not checked or modified in any way before sending it to the processor. Optional field. #### Card present reply messaging Identifier for an alternate terminal at your retail location. You defined the value for this field in the request message. This value must be printed on the receipt. This field is supported only for MasterCard transactions on FDC Nashville Global. * @member {String} laneNumber diff --git a/src/model/Ptsv2paymentsProcessingInformation.js b/src/model/Ptsv2paymentsProcessingInformation.js index 42c8a2c5..9cb4c3c2 100644 --- a/src/model/Ptsv2paymentsProcessingInformation.js +++ b/src/model/Ptsv2paymentsProcessingInformation.js @@ -72,6 +72,8 @@ + + @@ -106,6 +108,9 @@ if (data.hasOwnProperty('commerceIndicator')) { obj['commerceIndicator'] = ApiClient.convertToType(data['commerceIndicator'], 'String'); } + if (data.hasOwnProperty('commerceIndicatorLabel')) { + obj['commerceIndicatorLabel'] = ApiClient.convertToType(data['commerceIndicatorLabel'], 'String'); + } if (data.hasOwnProperty('paymentSolution')) { obj['paymentSolution'] = ApiClient.convertToType(data['paymentSolution'], 'String'); } @@ -118,6 +123,9 @@ if (data.hasOwnProperty('purchaseLevel')) { obj['purchaseLevel'] = ApiClient.convertToType(data['purchaseLevel'], 'String'); } + if (data.hasOwnProperty('paymentId')) { + obj['paymentId'] = ApiClient.convertToType(data['paymentId'], 'String'); + } if (data.hasOwnProperty('reportGroup')) { obj['reportGroup'] = ApiClient.convertToType(data['reportGroup'], 'String'); } @@ -207,6 +215,11 @@ * @member {String} commerceIndicator */ exports.prototype['commerceIndicator'] = undefined; + /** + * Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" + * @member {String} commerceIndicatorLabel + */ + exports.prototype['commerceIndicatorLabel'] = undefined; /** * Type of digital payment solution for the transaction. Possible Values: - `visacheckout`: Visa Checkout. This value is required for Visa Checkout transactions. For details, see `payment_solution` field description in [Visa Checkout Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/VCO_SCMP_API/html/) - `001`: Apple Pay. - `004`: Cybersource In-App Solution. - `005`: Masterpass. This value is required for Masterpass transactions on OmniPay Direct. For details, see \"Masterpass\" in the [Credit Card Services Using the SCMP API Guide.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/) - `006`: Android Pay. - `007`: Chase Pay. - `008`: Samsung Pay. - `012`: Google Pay. - `013`: Cybersource P2PE Decryption - `014`: Mastercard credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `015`: Visa credential on file (COF) payment network token. Returned in authorizations that use a payment network token associated with a TMS token. - `027`: Click to Pay. * @member {String} paymentSolution @@ -227,6 +240,11 @@ * @member {String} purchaseLevel */ exports.prototype['purchaseLevel'] = undefined; + /** + * This field is to accept the id of credit/capture in the body of L1 requests so the type of void can be identified and processed correctly downstream. + * @member {String} paymentId + */ + exports.prototype['paymentId'] = undefined; /** * Attribute that lets you define custom grouping for your processor reports. This field is supported only for **Worldpay VAP**. For details, see `report_group` field description in [Credit Card Services Using the SCMP API.](https://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html/) * @member {String} reportGroup diff --git a/src/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.js b/src/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.js index 82187733..b4010743 100644 --- a/src/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.js +++ b/src/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.js @@ -65,6 +65,7 @@ + }; /** @@ -132,6 +133,9 @@ if (data.hasOwnProperty('deferredAuthIndicator')) { obj['deferredAuthIndicator'] = ApiClient.convertToType(data['deferredAuthIndicator'], 'Boolean'); } + if (data.hasOwnProperty('cashAdvanceIndicator')) { + obj['cashAdvanceIndicator'] = ApiClient.convertToType(data['cashAdvanceIndicator'], 'Boolean'); + } } return obj; } @@ -227,6 +231,11 @@ * @member {Boolean} deferredAuthIndicator */ exports.prototype['deferredAuthIndicator'] = undefined; + /** + * This API field enables the merchant to indicate that a given transaction is Cash Advance. Cash advance or Cash disbursement functionality allows a merchant to dispense cash at a point of sale. It provides the ability of a POS system to act like an ATM. These terminals are typically seen in bank branches where customers can use their card and withdraw cash or at merchant locations where ATMs are sparse. Possible values: - `true` (Cash advance is supported) - `false` (default: cash advance is not supported) + * @member {Boolean} cashAdvanceIndicator + */ + exports.prototype['cashAdvanceIndicator'] = undefined; diff --git a/src/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.js b/src/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.js index d578f49c..80e451c2 100644 --- a/src/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.js +++ b/src/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.js @@ -55,6 +55,12 @@ + + + + + + }; /** @@ -71,6 +77,24 @@ if (data.hasOwnProperty('paymentMethod')) { obj['paymentMethod'] = ApiClient.convertToType(data['paymentMethod'], 'String'); } + if (data.hasOwnProperty('bonuses')) { + obj['bonuses'] = ApiClient.convertToType(data['bonuses'], 'String'); + } + if (data.hasOwnProperty('bonusMonth')) { + obj['bonusMonth'] = ApiClient.convertToType(data['bonusMonth'], 'String'); + } + if (data.hasOwnProperty('secondBonusMonth')) { + obj['secondBonusMonth'] = ApiClient.convertToType(data['secondBonusMonth'], 'String'); + } + if (data.hasOwnProperty('bonusAmount')) { + obj['bonusAmount'] = ApiClient.convertToType(data['bonusAmount'], 'String'); + } + if (data.hasOwnProperty('secondBonusAmount')) { + obj['secondBonusAmount'] = ApiClient.convertToType(data['secondBonusAmount'], 'String'); + } + if (data.hasOwnProperty('preapprovalType')) { + obj['preapprovalType'] = ApiClient.convertToType(data['preapprovalType'], 'String'); + } if (data.hasOwnProperty('installments')) { obj['installments'] = ApiClient.convertToType(data['installments'], 'String'); } @@ -101,6 +125,36 @@ * @member {String} paymentMethod */ exports.prototype['paymentMethod'] = undefined; + /** + * This value is a 2-digit code indicating the Number of Bonuses. Valid value from 1 to 6. + * @member {String} bonuses + */ + exports.prototype['bonuses'] = undefined; + /** + * This value is a 2-digit code indicating the first bonus month. Valid value from 1 to 12. + * @member {String} bonusMonth + */ + exports.prototype['bonusMonth'] = undefined; + /** + * This value is a 2-digit code indicating the second bonus month. Valid value from 1 to 12. + * @member {String} secondBonusMonth + */ + exports.prototype['secondBonusMonth'] = undefined; + /** + * This value contains the bonus amount of the first month. Maximum value without decimal 99999999. + * @member {String} bonusAmount + */ + exports.prototype['bonusAmount'] = undefined; + /** + * This value contains the bonus amount of the second month. Maximum value without decimal 99999999. + * @member {String} secondBonusAmount + */ + exports.prototype['secondBonusAmount'] = undefined; + /** + * This will contain the details of the kind of transaction that has been processe. Used only for Japan. Possible Values: - 0 = Normal (authorization with amount and clearing/settlement; data capture or paper draft) - 1 = Negative card authorization (authorization-only with 0 or 1 amount) - 2 = Reservation of authorization (authorization-only with amount) - 3 = Cancel transaction - 4 = Merchant-initiated reversal/refund transactions - 5 = Cancel reservation of authorization - 6 = Post authorization + * @member {String} preapprovalType + */ + exports.prototype['preapprovalType'] = undefined; /** * Number of Installments. * @member {String} installments diff --git a/src/model/Ptsv2voidsProcessingInformation.js b/src/model/Ptsv2voidsProcessingInformation.js new file mode 100644 index 00000000..8c25e1e3 --- /dev/null +++ b/src/model/Ptsv2voidsProcessingInformation.js @@ -0,0 +1,82 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['ApiClient'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + module.exports = factory(require('../ApiClient')); + } else { + // Browser globals (root is window) + if (!root.CyberSource) { + root.CyberSource = {}; + } + root.CyberSource.Ptsv2voidsProcessingInformation = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The Ptsv2voidsProcessingInformation model module. + * @module model/Ptsv2voidsProcessingInformation + * @version 0.0.1 + */ + + /** + * Constructs a new Ptsv2voidsProcessingInformation. + * @alias module:model/Ptsv2voidsProcessingInformation + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a Ptsv2voidsProcessingInformation from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/Ptsv2voidsProcessingInformation} obj Optional instance to populate. + * @return {module:model/Ptsv2voidsProcessingInformation} The populated Ptsv2voidsProcessingInformation instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('paymentId')) { + obj['paymentId'] = ApiClient.convertToType(data['paymentId'], 'String'); + } + } + return obj; + } + + /** + * This field is to accept the id of credit/capture in the body of L1 requests so the type of void can be identified and processed correctly downstream. + * @member {String} paymentId + */ + exports.prototype['paymentId'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.js b/src/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.js index f5d85810..af13a57a 100644 --- a/src/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.js +++ b/src/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.js @@ -48,6 +48,7 @@ var _this = this; + }; /** @@ -64,6 +65,9 @@ if (data.hasOwnProperty('solutionId')) { obj['solutionId'] = ApiClient.convertToType(data['solutionId'], 'String'); } + if (data.hasOwnProperty('thirdPartyCertificationNumber')) { + obj['thirdPartyCertificationNumber'] = ApiClient.convertToType(data['thirdPartyCertificationNumber'], 'String'); + } } return obj; } @@ -73,6 +77,11 @@ * @member {String} solutionId */ exports.prototype['solutionId'] = undefined; + /** + * 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. + * @member {String} thirdPartyCertificationNumber + */ + exports.prototype['thirdPartyCertificationNumber'] = undefined; diff --git a/src/model/TssV2TransactionsGet200ResponsePaymentInformation.js b/src/model/TssV2TransactionsGet200ResponsePaymentInformation.js index 5e2d6390..73cd63d9 100644 --- a/src/model/TssV2TransactionsGet200ResponsePaymentInformation.js +++ b/src/model/TssV2TransactionsGet200ResponsePaymentInformation.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument', 'model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress', 'model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures', 'model/TssV2TransactionsGet200ResponsePaymentInformationBank', 'model/TssV2TransactionsGet200ResponsePaymentInformationCard', 'model/TssV2TransactionsGet200ResponsePaymentInformationCustomer', 'model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier', 'model/TssV2TransactionsGet200ResponsePaymentInformationInvoice', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType'], factory); + define(['ApiClient', 'model/PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument', 'model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress', 'model/TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures', 'model/TssV2TransactionsGet200ResponsePaymentInformationBank', 'model/TssV2TransactionsGet200ResponsePaymentInformationCard', 'model/TssV2TransactionsGet200ResponsePaymentInformationCustomer', 'model/TssV2TransactionsGet200ResponsePaymentInformationFluidData', 'model/TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier', 'model/TssV2TransactionsGet200ResponsePaymentInformationInvoice', 'model/TssV2TransactionsGet200ResponsePaymentInformationPaymentType'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument'), require('./PtsV2PaymentsPost201ResponseTokenInformationShippingAddress'), require('./TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures'), require('./TssV2TransactionsGet200ResponsePaymentInformationBank'), require('./TssV2TransactionsGet200ResponsePaymentInformationCard'), require('./TssV2TransactionsGet200ResponsePaymentInformationCustomer'), require('./TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier'), require('./TssV2TransactionsGet200ResponsePaymentInformationInvoice'), require('./TssV2TransactionsGet200ResponsePaymentInformationPaymentType')); + module.exports = factory(require('../ApiClient'), require('./PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument'), require('./PtsV2PaymentsPost201ResponseTokenInformationShippingAddress'), require('./TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures'), require('./TssV2TransactionsGet200ResponsePaymentInformationBank'), require('./TssV2TransactionsGet200ResponsePaymentInformationCard'), require('./TssV2TransactionsGet200ResponsePaymentInformationCustomer'), require('./TssV2TransactionsGet200ResponsePaymentInformationFluidData'), require('./TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier'), require('./TssV2TransactionsGet200ResponsePaymentInformationInvoice'), require('./TssV2TransactionsGet200ResponsePaymentInformationPaymentType')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument, root.CyberSource.PtsV2PaymentsPost201ResponseTokenInformationShippingAddress, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationBank, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationCard, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationCustomer, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationInvoice, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationPaymentType); + root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformation = factory(root.CyberSource.ApiClient, root.CyberSource.PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument, root.CyberSource.PtsV2PaymentsPost201ResponseTokenInformationShippingAddress, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationBank, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationCard, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationCustomer, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationInvoice, root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationPaymentType); } -}(this, function(ApiClient, PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument, PtsV2PaymentsPost201ResponseTokenInformationShippingAddress, TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, TssV2TransactionsGet200ResponsePaymentInformationBank, TssV2TransactionsGet200ResponsePaymentInformationCard, TssV2TransactionsGet200ResponsePaymentInformationCustomer, TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier, TssV2TransactionsGet200ResponsePaymentInformationInvoice, TssV2TransactionsGet200ResponsePaymentInformationPaymentType) { +}(this, function(ApiClient, PtsV2PaymentsPost201ResponseTokenInformationPaymentInstrument, PtsV2PaymentsPost201ResponseTokenInformationShippingAddress, TssV2TransactionsGet200ResponsePaymentInformationAccountFeatures, TssV2TransactionsGet200ResponsePaymentInformationBank, TssV2TransactionsGet200ResponsePaymentInformationCard, TssV2TransactionsGet200ResponsePaymentInformationCustomer, TssV2TransactionsGet200ResponsePaymentInformationFluidData, TssV2TransactionsGet200ResponsePaymentInformationInstrumentIdentifier, TssV2TransactionsGet200ResponsePaymentInformationInvoice, TssV2TransactionsGet200ResponsePaymentInformationPaymentType) { 'use strict'; @@ -56,6 +56,7 @@ + }; /** @@ -96,6 +97,9 @@ if (data.hasOwnProperty('shippingAddress')) { obj['shippingAddress'] = PtsV2PaymentsPost201ResponseTokenInformationShippingAddress.constructFromObject(data['shippingAddress']); } + if (data.hasOwnProperty('fluidData')) { + obj['fluidData'] = TssV2TransactionsGet200ResponsePaymentInformationFluidData.constructFromObject(data['fluidData']); + } } return obj; } @@ -136,6 +140,10 @@ * @member {module:model/PtsV2PaymentsPost201ResponseTokenInformationShippingAddress} shippingAddress */ exports.prototype['shippingAddress'] = undefined; + /** + * @member {module:model/TssV2TransactionsGet200ResponsePaymentInformationFluidData} fluidData + */ + exports.prototype['fluidData'] = undefined; diff --git a/src/model/TssV2TransactionsGet200ResponsePaymentInformationCard.js b/src/model/TssV2TransactionsGet200ResponsePaymentInformationCard.js index 0dcb4a9f..3b1ab0e3 100644 --- a/src/model/TssV2TransactionsGet200ResponsePaymentInformationCard.js +++ b/src/model/TssV2TransactionsGet200ResponsePaymentInformationCard.js @@ -150,7 +150,7 @@ */ exports.prototype['accountEncoderId'] = undefined; /** - * Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. #### Cielo and Comercio Latino Possible values: - CREDIT: Credit card - DEBIT: Debit card This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier This field is supported only for Mastercard transactions in Brazil on CyberSource through VisaNet. + * Flag that specifies the type of account associated with the card. The cardholder provides this information during the payment process. Possible values: - C: Credit transaction - D: Debit transaction This field is supported only for all card Types on Visa Platform Connect. This field is required for: - Debit transactions on Cielo and Comercio Latino. - Transactions with Brazilian-issued cards on CyberSource through VisaNet. **Note** The value for this field corresponds to the following data in the TC 33 capture file5: - Record: CP07 TCR0 - Position: 51 - Field: Combination Card Transaction Identifier * @member {String} useAs */ exports.prototype['useAs'] = undefined; diff --git a/src/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.js b/src/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.js new file mode 100644 index 00000000..e706bcf9 --- /dev/null +++ b/src/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.js @@ -0,0 +1,82 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['ApiClient'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + module.exports = factory(require('../ApiClient')); + } else { + // Browser globals (root is window) + if (!root.CyberSource) { + root.CyberSource = {}; + } + root.CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The TssV2TransactionsGet200ResponsePaymentInformationFluidData model module. + * @module model/TssV2TransactionsGet200ResponsePaymentInformationFluidData + * @version 0.0.1 + */ + + /** + * Constructs a new TssV2TransactionsGet200ResponsePaymentInformationFluidData. + * @alias module:model/TssV2TransactionsGet200ResponsePaymentInformationFluidData + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a TssV2TransactionsGet200ResponsePaymentInformationFluidData from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/TssV2TransactionsGet200ResponsePaymentInformationFluidData} obj Optional instance to populate. + * @return {module:model/TssV2TransactionsGet200ResponsePaymentInformationFluidData} The populated TssV2TransactionsGet200ResponsePaymentInformationFluidData instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('descriptor')) { + obj['descriptor'] = ApiClient.convertToType(data['descriptor'], 'String'); + } + } + return obj; + } + + /** + * The identifier for a payment solution, which is sending the encrypted payment data for decryption. Valid values: Samsung Pay: RklEPUNPTU1PTi5TQU1TVU5HLklOQVBQLlBBWU1FTlQ= Note: For other payment solutions, the value may be specific to the terminal or device initiatinf the payment. For example, the descriptor for a Bluefin payment encryption would be a device-generated descriptor. Used by Authorization and Standalone Credits. Required for authorizations and standalone credits. Card Present processing: Format of the encrypted payment data. The value for Bluefin PCI P2PE is `Ymx1ZWZpbg==`. paymentInformation.fluidData.encoding must be `Base64`. The value for Cybersource P2PE decryption depends on the encoding method used and identified in encoding field. If paymentInformation.fluidData.encoding is `Base64`, the value is: `RklEPUVNVi5QQVlNRU5ULkFQSQ==` If paymentInformation.fluidData.encoding is `HEX`, the value is: `4649443D454D562E5041594D454E542E41504` + * @member {String} descriptor + */ + exports.prototype['descriptor'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.js b/src/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.js index a5344388..530a427c 100644 --- a/src/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.js +++ b/src/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.js @@ -51,6 +51,7 @@ + }; /** @@ -73,6 +74,9 @@ if (data.hasOwnProperty('terminalCapability')) { obj['terminalCapability'] = ApiClient.convertToType(data['terminalCapability'], 'Number'); } + if (data.hasOwnProperty('cardholderVerificationMethodUsed')) { + obj['cardholderVerificationMethodUsed'] = ApiClient.convertToType(data['cardholderVerificationMethodUsed'], 'Number'); + } if (data.hasOwnProperty('emv')) { obj['emv'] = Ptsv2paymentsidreversalsPointOfSaleInformationEmv.constructFromObject(data['emv']); } @@ -95,6 +99,11 @@ * @member {Number} terminalCapability */ exports.prototype['terminalCapability'] = undefined; + /** + * Method that was used to verify the cardholder's identity. Possible values: - `0`: No verification - `1`: Signature - `2`: PIN - `3`: Cardholder device CVM + * @member {Number} cardholderVerificationMethodUsed + */ + exports.prototype['cardholderVerificationMethodUsed'] = undefined; /** * @member {module:model/Ptsv2paymentsidreversalsPointOfSaleInformationEmv} emv */ diff --git a/src/model/TssV2TransactionsGet200ResponseProcessingInformation.js b/src/model/TssV2TransactionsGet200ResponseProcessingInformation.js index 3ac7c787..8f16fa53 100644 --- a/src/model/TssV2TransactionsGet200ResponseProcessingInformation.js +++ b/src/model/TssV2TransactionsGet200ResponseProcessingInformation.js @@ -54,6 +54,7 @@ + }; /** @@ -76,6 +77,9 @@ if (data.hasOwnProperty('commerceIndicator')) { obj['commerceIndicator'] = ApiClient.convertToType(data['commerceIndicator'], 'String'); } + if (data.hasOwnProperty('commerceIndicatorLabel')) { + obj['commerceIndicatorLabel'] = ApiClient.convertToType(data['commerceIndicatorLabel'], 'String'); + } if (data.hasOwnProperty('businessApplicationId')) { obj['businessApplicationId'] = ApiClient.convertToType(data['businessApplicationId'], 'String'); } @@ -107,6 +111,11 @@ * @member {String} commerceIndicator */ exports.prototype['commerceIndicator'] = undefined; + /** + * Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" + * @member {String} commerceIndicatorLabel + */ + exports.prototype['commerceIndicatorLabel'] = undefined; /** * Payouts transaction type. Required for OCT transactions. This field is a pass-through, which means that CyberSource does not verify the value or modify it in any way before sending it to the processor. **Note** When the request includes this field, this value overrides the information in your CyberSource account. For valid values, see the `invoiceHeader_businessApplicationID` field description in [Payouts Using the Simple Order API.](http://apps.cybersource.com/library/documentation/dev_guides/payouts_SO/Payouts_SO_API.pdf) * @member {String} businessApplicationId diff --git a/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.js b/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.js index e4546fe7..49cbd44c 100644 --- a/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.js +++ b/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation.js @@ -16,18 +16,18 @@ (function(root, factory) { if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. - define(['ApiClient', 'model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner'], factory); + define(['ApiClient', 'model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner'], factory); } else if (typeof module === 'object' && module.exports) { // CommonJS-like environments that support module.exports, like Node. - module.exports = factory(require('../ApiClient'), require('./TssV2TransactionsGet200ResponseClientReferenceInformationPartner')); + module.exports = factory(require('../ApiClient'), require('./TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner')); } else { // Browser globals (root is window) if (!root.CyberSource) { root.CyberSource = {}; } - root.CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation = factory(root.CyberSource.ApiClient, root.CyberSource.TssV2TransactionsGet200ResponseClientReferenceInformationPartner); + root.CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformation = factory(root.CyberSource.ApiClient, root.CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner); } -}(this, function(ApiClient, TssV2TransactionsGet200ResponseClientReferenceInformationPartner) { +}(this, function(ApiClient, TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner) { 'use strict'; @@ -74,7 +74,7 @@ obj['applicationUser'] = ApiClient.convertToType(data['applicationUser'], 'String'); } if (data.hasOwnProperty('partner')) { - obj['partner'] = TssV2TransactionsGet200ResponseClientReferenceInformationPartner.constructFromObject(data['partner']); + obj['partner'] = TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.constructFromObject(data['partner']); } } return obj; @@ -96,7 +96,7 @@ */ exports.prototype['applicationUser'] = undefined; /** - * @member {module:model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner} partner + * @member {module:model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner} partner */ exports.prototype['partner'] = undefined; diff --git a/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.js b/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.js new file mode 100644 index 00000000..1b3fbd3a --- /dev/null +++ b/src/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.js @@ -0,0 +1,82 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['ApiClient'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + module.exports = factory(require('../ApiClient')); + } else { + // Browser globals (root is window) + if (!root.CyberSource) { + root.CyberSource = {}; + } + root.CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner = factory(root.CyberSource.ApiClient); + } +}(this, function(ApiClient) { + 'use strict'; + + + + + /** + * The TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner model module. + * @module model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner + * @version 0.0.1 + */ + + /** + * Constructs a new TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner. + * @alias module:model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner + * @class + */ + var exports = function() { + var _this = this; + + + }; + + /** + * Constructs a TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner from a plain JavaScript object, optionally creating a new instance. + * Copies all relevant properties from data to obj if supplied or a new instance if not. + * @param {Object} data The plain JavaScript object bearing properties of interest. + * @param {module:model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner} obj Optional instance to populate. + * @return {module:model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner} The populated TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner instance. + */ + exports.constructFromObject = function(data, obj) { + if (data) { + obj = obj || new exports(); + + if (data.hasOwnProperty('solutionId')) { + obj['solutionId'] = ApiClient.convertToType(data['solutionId'], 'String'); + } + } + return obj; + } + + /** + * 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. + * @member {String} solutionId + */ + exports.prototype['solutionId'] = undefined; + + + + return exports; +})); + + diff --git a/src/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.js b/src/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.js index 7e926589..526959f2 100644 --- a/src/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.js +++ b/src/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.js @@ -50,6 +50,7 @@ + }; /** @@ -72,6 +73,9 @@ if (data.hasOwnProperty('commerceIndicator')) { obj['commerceIndicator'] = ApiClient.convertToType(data['commerceIndicator'], 'String'); } + if (data.hasOwnProperty('commerceIndicatorLabel')) { + obj['commerceIndicatorLabel'] = ApiClient.convertToType(data['commerceIndicatorLabel'], 'String'); + } } return obj; } @@ -91,6 +95,11 @@ * @member {String} commerceIndicator */ exports.prototype['commerceIndicator'] = undefined; + /** + * Type of transaction. Some payment card companies use this information when determining discount rates. #### Used by **Authorization** Required payer authentication transactions; otherwise, optional. **Credit** Required for standalone credits on Chase Paymentech solutions; otherwise, optional. The list of valid values in this field depends on your processor. See Appendix I, \"Commerce Indicators,\" on page 441 of the Cybersource Credit Card Guide. #### Ingenico ePayments When you omit this field for Ingenico ePayments, the processor uses the default transaction type they have on file for you instead of the default value (listed in Appendix I, \"Commerce Indicators,\" on page 441.) #### Payer Authentication Transactions For the possible values and requirements, see \"Payer Authentication,\" page 195. #### Card Present You must set this field to `retail`. This field is required for a card-present transaction. Note that this should ONLY be used when the cardholder and card are present at the time of the transaction. For all keyed transactions originated from a POS terminal where the cardholder and card are not present, commerceIndicator should be submitted as “moto\" + * @member {String} commerceIndicatorLabel + */ + exports.prototype['commerceIndicatorLabel'] = undefined; diff --git a/test/model/InlineResponse4002.spec.js b/test/model/InlineResponse4002.spec.js index c5e556be..d4c82a72 100644 --- a/test/model/InlineResponse4002.spec.js +++ b/test/model/InlineResponse4002.spec.js @@ -80,6 +80,12 @@ //expect(instance).to.be(); }); + it('should have the property statusCode (base name: "statusCode")', function() { + // uncomment below and update the code to test the property statusCode + //var instane = new CyberSource.InlineResponse4002(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/InlineResponse502.spec.js b/test/model/InlineResponse502.spec.js new file mode 100644 index 00000000..b004f9fa --- /dev/null +++ b/test/model/InlineResponse502.spec.js @@ -0,0 +1,91 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', '../../src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require('../../src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.CyberSource); + } +}(this, function(expect, CyberSource) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new CyberSource.InlineResponse502(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('InlineResponse502', function() { + it('should create an instance of InlineResponse502', function() { + // uncomment below and update the code to test InlineResponse502 + //var instane = new CyberSource.InlineResponse502(); + //expect(instance).to.be.a(CyberSource.InlineResponse502); + }); + + it('should have the property submitTimeUtc (base name: "submitTimeUtc")', function() { + // uncomment below and update the code to test the property submitTimeUtc + //var instane = new CyberSource.InlineResponse502(); + //expect(instance).to.be(); + }); + + it('should have the property status (base name: "status")', function() { + // uncomment below and update the code to test the property status + //var instane = new CyberSource.InlineResponse502(); + //expect(instance).to.be(); + }); + + it('should have the property reason (base name: "reason")', function() { + // uncomment below and update the code to test the property reason + //var instane = new CyberSource.InlineResponse502(); + //expect(instance).to.be(); + }); + + it('should have the property message (base name: "message")', function() { + // uncomment below and update the code to test the property message + //var instane = new CyberSource.InlineResponse502(); + //expect(instance).to.be(); + }); + + it('should have the property statusCode (base name: "statusCode")', function() { + // uncomment below and update the code to test the property statusCode + //var instane = new CyberSource.InlineResponse502(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/KmsV2KeysSymPost201ResponseKeyInformation.spec.js b/test/model/KmsV2KeysSymPost201ResponseKeyInformation.spec.js index 5bd9fe40..7124efa7 100644 --- a/test/model/KmsV2KeysSymPost201ResponseKeyInformation.spec.js +++ b/test/model/KmsV2KeysSymPost201ResponseKeyInformation.spec.js @@ -62,6 +62,12 @@ //expect(instance).to.be(); }); + it('should have the property externalOrganizationId (base name: "externalOrganizationId")', function() { + // uncomment below and update the code to test the property externalOrganizationId + //var instane = new CyberSource.KmsV2KeysSymPost201ResponseKeyInformation(); + //expect(instance).to.be(); + }); + it('should have the property referenceNumber (base name: "referenceNumber")', function() { // uncomment below and update the code to test the property referenceNumber //var instane = new CyberSource.KmsV2KeysSymPost201ResponseKeyInformation(); diff --git a/test/model/MitVoidRequest.spec.js b/test/model/MitVoidRequest.spec.js index 98600a38..cb3c5a6f 100644 --- a/test/model/MitVoidRequest.spec.js +++ b/test/model/MitVoidRequest.spec.js @@ -74,6 +74,12 @@ //expect(instance).to.be(); }); + it('should have the property processingInformation (base name: "processingInformation")', function() { + // uncomment below and update the code to test the property processingInformation + //var instane = new CyberSource.MitVoidRequest(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsPointOfSaleInformation.spec.js b/test/model/Ptsv2paymentsPointOfSaleInformation.spec.js index a0d08090..67646dc5 100644 --- a/test/model/Ptsv2paymentsPointOfSaleInformation.spec.js +++ b/test/model/Ptsv2paymentsPointOfSaleInformation.spec.js @@ -68,6 +68,12 @@ //expect(instance).to.be(); }); + it('should have the property cardholderVerificationMethodUsed (base name: "cardholderVerificationMethodUsed")', function() { + // uncomment below and update the code to test the property cardholderVerificationMethodUsed + //var instane = new CyberSource.Ptsv2paymentsPointOfSaleInformation(); + //expect(instance).to.be(); + }); + it('should have the property laneNumber (base name: "laneNumber")', function() { // uncomment below and update the code to test the property laneNumber //var instane = new CyberSource.Ptsv2paymentsPointOfSaleInformation(); diff --git a/test/model/Ptsv2paymentsProcessingInformation.spec.js b/test/model/Ptsv2paymentsProcessingInformation.spec.js index 234de49e..73f3b138 100644 --- a/test/model/Ptsv2paymentsProcessingInformation.spec.js +++ b/test/model/Ptsv2paymentsProcessingInformation.spec.js @@ -92,6 +92,12 @@ //expect(instance).to.be(); }); + it('should have the property commerceIndicatorLabel (base name: "commerceIndicatorLabel")', function() { + // uncomment below and update the code to test the property commerceIndicatorLabel + //var instane = new CyberSource.Ptsv2paymentsProcessingInformation(); + //expect(instance).to.be(); + }); + it('should have the property paymentSolution (base name: "paymentSolution")', function() { // uncomment below and update the code to test the property paymentSolution //var instane = new CyberSource.Ptsv2paymentsProcessingInformation(); @@ -116,6 +122,12 @@ //expect(instance).to.be(); }); + it('should have the property paymentId (base name: "paymentId")', function() { + // uncomment below and update the code to test the property paymentId + //var instane = new CyberSource.Ptsv2paymentsProcessingInformation(); + //expect(instance).to.be(); + }); + it('should have the property reportGroup (base name: "reportGroup")', function() { // uncomment below and update the code to test the property reportGroup //var instane = new CyberSource.Ptsv2paymentsProcessingInformation(); diff --git a/test/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.spec.js b/test/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.spec.js index 4b24055e..353ffad1 100644 --- a/test/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.spec.js +++ b/test/model/Ptsv2paymentsProcessingInformationAuthorizationOptions.spec.js @@ -164,6 +164,12 @@ //expect(instance).to.be(); }); + it('should have the property cashAdvanceIndicator (base name: "cashAdvanceIndicator")', function() { + // uncomment below and update the code to test the property cashAdvanceIndicator + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationAuthorizationOptions(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.spec.js b/test/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.spec.js index 44b98374..9e9396e1 100644 --- a/test/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.spec.js +++ b/test/model/Ptsv2paymentsProcessingInformationJapanPaymentOptions.spec.js @@ -62,6 +62,42 @@ //expect(instance).to.be(); }); + it('should have the property bonuses (base name: "bonuses")', function() { + // uncomment below and update the code to test the property bonuses + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); + //expect(instance).to.be(); + }); + + it('should have the property bonusMonth (base name: "bonusMonth")', function() { + // uncomment below and update the code to test the property bonusMonth + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); + //expect(instance).to.be(); + }); + + it('should have the property secondBonusMonth (base name: "secondBonusMonth")', function() { + // uncomment below and update the code to test the property secondBonusMonth + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); + //expect(instance).to.be(); + }); + + it('should have the property bonusAmount (base name: "bonusAmount")', function() { + // uncomment below and update the code to test the property bonusAmount + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); + //expect(instance).to.be(); + }); + + it('should have the property secondBonusAmount (base name: "secondBonusAmount")', function() { + // uncomment below and update the code to test the property secondBonusAmount + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); + //expect(instance).to.be(); + }); + + it('should have the property preapprovalType (base name: "preapprovalType")', function() { + // uncomment below and update the code to test the property preapprovalType + //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); + //expect(instance).to.be(); + }); + it('should have the property installments (base name: "installments")', function() { // uncomment below and update the code to test the property installments //var instane = new CyberSource.Ptsv2paymentsProcessingInformationJapanPaymentOptions(); diff --git a/test/model/Ptsv2voidsProcessingInformation.spec.js b/test/model/Ptsv2voidsProcessingInformation.spec.js new file mode 100644 index 00000000..2f3f500d --- /dev/null +++ b/test/model/Ptsv2voidsProcessingInformation.spec.js @@ -0,0 +1,67 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', '../../src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require('../../src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.CyberSource); + } +}(this, function(expect, CyberSource) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new CyberSource.Ptsv2voidsProcessingInformation(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('Ptsv2voidsProcessingInformation', function() { + it('should create an instance of Ptsv2voidsProcessingInformation', function() { + // uncomment below and update the code to test Ptsv2voidsProcessingInformation + //var instane = new CyberSource.Ptsv2voidsProcessingInformation(); + //expect(instance).to.be.a(CyberSource.Ptsv2voidsProcessingInformation); + }); + + it('should have the property paymentId (base name: "paymentId")', function() { + // uncomment below and update the code to test the property paymentId + //var instane = new CyberSource.Ptsv2voidsProcessingInformation(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.spec.js b/test/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.spec.js index 3a15e9d5..c72ad8c8 100644 --- a/test/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.spec.js +++ b/test/model/TssV2TransactionsGet200ResponseClientReferenceInformationPartner.spec.js @@ -62,6 +62,12 @@ //expect(instance).to.be(); }); + it('should have the property thirdPartyCertificationNumber (base name: "thirdPartyCertificationNumber")', function() { + // uncomment below and update the code to test the property thirdPartyCertificationNumber + //var instane = new CyberSource.TssV2TransactionsGet200ResponseClientReferenceInformationPartner(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/TssV2TransactionsGet200ResponsePaymentInformation.spec.js b/test/model/TssV2TransactionsGet200ResponsePaymentInformation.spec.js index cb5847ef..1d1d8b31 100644 --- a/test/model/TssV2TransactionsGet200ResponsePaymentInformation.spec.js +++ b/test/model/TssV2TransactionsGet200ResponsePaymentInformation.spec.js @@ -110,6 +110,12 @@ //expect(instance).to.be(); }); + it('should have the property fluidData (base name: "fluidData")', function() { + // uncomment below and update the code to test the property fluidData + //var instane = new CyberSource.TssV2TransactionsGet200ResponsePaymentInformation(); + //expect(instance).to.be(); + }); + }); })); diff --git a/test/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.spec.js b/test/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.spec.js new file mode 100644 index 00000000..7aec6867 --- /dev/null +++ b/test/model/TssV2TransactionsGet200ResponsePaymentInformationFluidData.spec.js @@ -0,0 +1,67 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', '../../src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require('../../src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.CyberSource); + } +}(this, function(expect, CyberSource) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('TssV2TransactionsGet200ResponsePaymentInformationFluidData', function() { + it('should create an instance of TssV2TransactionsGet200ResponsePaymentInformationFluidData', function() { + // uncomment below and update the code to test TssV2TransactionsGet200ResponsePaymentInformationFluidData + //var instane = new CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData(); + //expect(instance).to.be.a(CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData); + }); + + it('should have the property descriptor (base name: "descriptor")', function() { + // uncomment below and update the code to test the property descriptor + //var instane = new CyberSource.TssV2TransactionsGet200ResponsePaymentInformationFluidData(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.spec.js b/test/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.spec.js index b1a79857..59be9e85 100644 --- a/test/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.spec.js +++ b/test/model/TssV2TransactionsGet200ResponsePointOfSaleInformation.spec.js @@ -74,6 +74,12 @@ //expect(instance).to.be(); }); + it('should have the property cardholderVerificationMethodUsed (base name: "cardholderVerificationMethodUsed")', function() { + // uncomment below and update the code to test the property cardholderVerificationMethodUsed + //var instane = new CyberSource.TssV2TransactionsGet200ResponsePointOfSaleInformation(); + //expect(instance).to.be(); + }); + it('should have the property emv (base name: "emv")', function() { // uncomment below and update the code to test the property emv //var instane = new CyberSource.TssV2TransactionsGet200ResponsePointOfSaleInformation(); diff --git a/test/model/TssV2TransactionsGet200ResponseProcessingInformation.spec.js b/test/model/TssV2TransactionsGet200ResponseProcessingInformation.spec.js index df6deb5e..a46cb204 100644 --- a/test/model/TssV2TransactionsGet200ResponseProcessingInformation.spec.js +++ b/test/model/TssV2TransactionsGet200ResponseProcessingInformation.spec.js @@ -74,6 +74,12 @@ //expect(instance).to.be(); }); + it('should have the property commerceIndicatorLabel (base name: "commerceIndicatorLabel")', function() { + // uncomment below and update the code to test the property commerceIndicatorLabel + //var instane = new CyberSource.TssV2TransactionsGet200ResponseProcessingInformation(); + //expect(instance).to.be(); + }); + it('should have the property businessApplicationId (base name: "businessApplicationId")', function() { // uncomment below and update the code to test the property businessApplicationId //var instane = new CyberSource.TssV2TransactionsGet200ResponseProcessingInformation(); diff --git a/test/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.spec.js b/test/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.spec.js new file mode 100644 index 00000000..e29b0cb2 --- /dev/null +++ b/test/model/TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner.spec.js @@ -0,0 +1,67 @@ +/** + * CyberSource Merged Spec + * All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html + * + * OpenAPI spec version: 0.0.1 + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * + * Swagger Codegen version: 2.3.0 + * + * Do not edit the class manually. + * + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. + define(['expect.js', '../../src/index'], factory); + } else if (typeof module === 'object' && module.exports) { + // CommonJS-like environments that support module.exports, like Node. + factory(require('expect.js'), require('../../src/index')); + } else { + // Browser globals (root is window) + factory(root.expect, root.CyberSource); + } +}(this, function(expect, CyberSource) { + 'use strict'; + + var instance; + + beforeEach(function() { + instance = new CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner(); + }); + + var getProperty = function(object, getter, property) { + // Use getter method if present; otherwise, get the property directly. + if (typeof object[getter] === 'function') + return object[getter](); + else + return object[property]; + } + + var setProperty = function(object, setter, property, value) { + // Use setter method if present; otherwise, set the property directly. + if (typeof object[setter] === 'function') + object[setter](value); + else + object[property] = value; + } + + describe('TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner', function() { + it('should create an instance of TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner', function() { + // uncomment below and update the code to test TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner + //var instane = new CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner(); + //expect(instance).to.be.a(CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner); + }); + + it('should have the property solutionId (base name: "solutionId")', function() { + // uncomment below and update the code to test the property solutionId + //var instane = new CyberSource.TssV2TransactionsPost201ResponseEmbeddedClientReferenceInformationPartner(); + //expect(instance).to.be(); + }); + + }); + +})); diff --git a/test/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.spec.js b/test/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.spec.js index 4a2f826f..3f69c314 100644 --- a/test/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.spec.js +++ b/test/model/TssV2TransactionsPost201ResponseEmbeddedProcessingInformation.spec.js @@ -74,6 +74,12 @@ //expect(instance).to.be(); }); + it('should have the property commerceIndicatorLabel (base name: "commerceIndicatorLabel")', function() { + // uncomment below and update the code to test the property commerceIndicatorLabel + //var instane = new CyberSource.TssV2TransactionsPost201ResponseEmbeddedProcessingInformation(); + //expect(instance).to.be(); + }); + }); })); From 2795344f966c025c30d2ee7e8ac8f35cb505533a Mon Sep 17 00:00:00 2001 From: rsachan8 Date: Mon, 19 Sep 2022 12:21:07 +0530 Subject: [PATCH 3/3] bumping sdk version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c3bc904f..a4a35db4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cybersource-rest-client", - "version": "0.0.40", + "version": "0.0.41", "description": "Node.js SDK for the CyberSource REST API", "author": "developer@cybersource.com", "license": "CyberSource",